如果您转到页面 a 并四处滚动然后刷新,页面将在您离开它的位置刷新。这很好,但是这也发生在 url 中有 anchor 位置的页面上。一个例子是,如果您单击链接 http://example.com/post/244#comment5
并在环顾四周后刷新页面,您将不会在 anchor 处并且页面跳来跳去。有什么办法可以用 javascript 来防止这种情况吗?因此,无论您做什么,都可以始终导航到 anchor 。
最佳答案
在 Chrome 上,即使您将 scrollTop 强制设置为 0,它也会在第一次滚动事件后跳转。
你应该将滚动条绑定(bind)到这个:
$(window).on('beforeunload', function() {
$(window).scrollTop(0);
});
因此浏览器被欺骗,认为它在刷新之前就处于开始状态。
关于javascript - 防止浏览器在刷新时自动滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7035331/