我有以下代码并且它返回了"未捕获的TypeError:无法读取属性' 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();
}
})
答案 0 :(得分:1)
.svgWrap
事件触发时, scroll
可能不存在;在页面末尾包含脚本,将其包装在$(document).ready
中,或检查.svgWrap
。
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();
}
});