[英]Cannot read property 'top' of undefined in jQuery
我剛剛使用jQuery開發了具有滾動效果的網站。 當我單擊菜單項時,它應向下滾動並顯示該部分。 當我單擊特定菜單時,它會向下滾動。 但是在url中,我得到的是www.example.com/#menuitem_name
。 特定部分未激活。
這是我的jQuery文件:
$('body').scrollspy({
target: '.navbar-fixed-top',
offset: 80
})
$('a.page-scroll').bind('click', function(event) {
var link = $(this);
$('html, body').stop().animate({
scrollTop: $(link.attr('href')).offset().top - 70
}, 500);
event.preventDefault();
});
});
的HTML
<section id="beta1.0" class="container">Hi</section>
<li><a class="page-scroll" href="#beta1.0">Beta1.0</a> hi</li>
您的選擇器如下所示: #beta1.0
這意味着“與id一個元素beta
和階級 0
”(或會,如果你能有一個0
后立即.
在選擇器)。
您需要逃脫.
。
link.attr('href').replace(".", "\\.", "g")
我同意@Quentin的答案。
由於beta1.0引起問題
如果只是刪除.0或只是點。 它工作正常。
$(function(){
/*
$('body').scrollspy({
target: '.navbar-fixed-top',
offset: 80
});
*/
$('a.page-scroll').bind('click', function(event) {
var link = $(this);
$('html, body').stop().animate({
scrollTop: $(link.attr('href')).offset().top - 70
}, 500);
event.preventDefault();
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.