Firefox调试器为jQuery函数显示一个TypeError,当用户同时滚动并更新类时,该函数旨在将导航栏固定到页面顶部。
该功能如下。
$(window).scroll(function() {
if ($(".navbar").offset().top>30) {
$(".navbar-fixed-top").addClass("sticky");
}
else {
$(".navbar-fixed-top").removeClass("sticky");
}
});
产生的错误就是这个。
时间戳:31/01/2014 10:01:04
错误:TypeError:
$(...).offset(...)
未定义
我已经在SO上查找了类似的示例,但无法将结果转换为修复。任何帮助将不胜感激。
答案 0 :(得分:32)
这是因为无法找到你的$(" .navbar")。在获得偏移之前检查元素是否存在。
if ($(".navbar").length) {...}
答案 1 :(得分:0)
它像这样对我有用
$('.custom-scrollbar').animate({
scrollTop: $('a.sidebar-link.sidebar-title.active').offset.top - 200
}, 1000);
不带 () 的偏移