我正在使用此jQuery小代码进行平滑滚动。滚动应该在距顶部70像素处停止,并且滚动在同一页面上进行。但是,如果我在另一页上,并且单击指向另一页上ID的哈希的链接,滚动不会停留在70px左右,而是在顶部。
如何避免这种情况?
$(function() {
const offset = 70;
$('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').animate({
scrollTop: target.offset().top - offset
}, 500);
return false;
}
}
});
});