我在我的网站上使用 Slicknav 添加移动友好菜单。我正在运行一个脚本来向页面锚点添加平滑滚动,由于某种原因,它适用于子菜单项,但不适用于父菜单项。
我猜这是因为父菜单项附加了某种单击功能以打开子菜单。我对 jQuery 不是很好,我不知道如何解决这个问题。
这是我用来添加滚动效果的内容:
$('.slicknav_menu a[href*=#]:not([href=#])').click(function() {
if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'')
&& location.hostname == this.hostname) {
var target = $(this.hash);
target = target.length ? target : $('[name=' + this.hash.slice(1) +']');
if (target.length) {
$('html,body').stop().animate({
scrollTop: target.offset().top - 120 //offsets for fixed header
}, 1000);
return false;
}
}
});