未捕获的TypeError: Cannot read property 'top'的定义

Uncaught TypeError: Cannot read property 'top' of undefined

本文关键字:定义 top property Cannot TypeError read      更新时间:2023-09-26

我有以下代码,它返回一个"未捕获的类型错误:无法读取属性'top'的未定义"错误在控制台中,我不知道为什么?代码实际上在做我希望它做的事情,但我希望它不返回任何错误。有人能给我指个正确的方向吗?

var sig = false;
$(window).on('scroll', function () {
    var sigTop = $('.svgWrap').offset().top - 500;
    var winTop = $(window).scrollTop();
    if (sigTop < winTop && !sig) {
        sig = true;
        animateSignature();
    }
})

当第一个scroll事件触发时,.svgWrap可能不存在;将脚本包含在页面末尾,将其包装在$(document).ready中,或检查.svgWrap s。

var sig = false;
$(window).on('scroll', function () {
    var svgWrap = $('.svgWrap');
    if (!svgWrap.length) {
        return;
    }
    var sigTop = svgWrap.offset().top - 500;
    var winTop = $(window).scrollTop();
    if (sigTop < winTop && !sig) {
        sig = true;
        animateSignature();
    }
});