我有一个带导航的单页网站,允许用户滚动到页面的不同部分。当用户单击链接时,url 中的哈希值也会发生变化,当用户滚动页面时,哈希值也会发生变化。我唯一的问题是,如果用户位于顶部并单击链接以转到页脚,则哈希会随着它跳过不同部分而发生变化,因此在最终到达页脚之前快速突出显示具有所选状态的导航链接。有没有办法可以在页面滚动到页脚时禁用 hashchange 功能?
$(window).on('hashchange', function(){
var id = window.location.hash.substring(1);
$('#header ul li').removeClass('selected');
$('[data-rel="'+id+'"]').addClass('selected');
});