2

我制作了一个手风琴菜单,就像这里解释的那样。问题是当您单击菜单项时,浏览器会尝试跳转(并滚动)到target以确保目标在视口中可见。除了这样的事情之外,有什么解决方案可以防止跳跃吗?

$("a[href^=#]").on("click", function(e) {
    e.preventDefault();
    history.pushState({}, "", this.href);
});

js源码:战斗跳跃

4

1 回答 1

1

除了使用 JavaScript,别无他法。您还可以监听 hashchange 事件,在事件触发时保存实际的滚动位置,并在事件发生后跳回它。但这些是人们能想到的唯一可能的解决方案。

于 2013-06-29T12:14:50.830 回答