我创建了一个单页滚动,可以从主页开始。
问题:从博客页面,如果我点击“联系”'页面,它应该转到主页并向下滚动到联系部分。
当我点击博客页面中的联系人时,我在控制台中出现以下错误。
script.js?ver=2017:24 Uncaught TypeError: Cannot read property 'top' of undefined
at HTMLAnchorElement.<anonymous> (script.js?ver=2017:24)
at HTMLAnchorElement.dispatch (jquery.js?ver=1.12.4:3)
at HTMLAnchorElement.r.handle (jquery.js?ver=1.12.4:3)
我意识到问题出在我的脚本上,特别是这一行:scrollTop: jQuery(sectionID).offset().top
?
我已经整理了教程视频中的代码,所以我不确定是什么问题。代码有什么问题?想法?这是The Site.
jQuery(document).ready(function() {
// add a click listener to each <a> tags
setBindings();
// burger nav
jQuery(".burger-nav").on("click", function() {
jQuery(".header-nav").toggleClass("open");
});
});
/* ONE PAGE NAVIGATION FUNCTION */
function setBindings() {
jQuery('a[href^="#"]').on('click', function(e) {
e.preventDefault();
console.log('#someButton was clicked');
// Get the href attribute, which includes '#' already
var sectionID = jQuery(this).attr('href') + "-View";
jQuery("html, body").animate({
// Find target element
scrollTop: jQuery(sectionID).offset().top
}, 1000)
});
}