我需要将此js平滑滚动到元素代码以使其偏移量为100px以适应导航栏。 此网站上的另一个问题不适用于此确切代码。 这是代码:
function scrollAnchors(t, e = null) {
function n(t) {
return Math.floor(t.getBoundingClientRect().top)
}
t.preventDefault();
var o = e ? e.getAttribute("href") : this.getAttribute("href"),
r = document.querySelector(o);
if (r) {
var a = n(r);
window.scrollBy({
top: a,
left: 0,
behavior: "smooth"
});
var i = setInterval(function () {
var t = window.innerHeight + window.pageYOffset >= document.body.offsetHeight - 2;
(0 === n(r) || t) && (r.tabIndex = "-1", r.focus(), "history" in window ? window.history.pushState("", "", o) : window.location = o, clearInterval(i))
}, 100)
}
}
document.addEventListener("click", function (t) {
"A" === t.target.tagName && (!t.target.href || -1 == t.target.href.indexOf("#") || t.target.pathname != location.pathname && "/" + t.target.pathname != location.pathname || t.target.search != location.search || scrollAnchors(t, t.target))
});