javascript - 防止浏览器在刷新时自动滚动

标签 javascript browser

如果您转到页面 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/

相关文章:

PHP get_browser() 返回奇怪的值

android - Samsung Galaxy Note II 的设备宽度是多少?

browser - 如何使用 CSS 媒体查询检测设备方向?

javascript - UIWebview内容根据webview框架

javascript - 将函数分配给事件处理程序后,变量不断变化

javascript - 如何让TinyMCE显示在jsfpage上?

javascript - jQuery 求和或相乘值始终没有事件触发

javascript - 将项目合并到 json 中

firefox - 哪个浏览器更容易开发插件? Chrome 还是火狐浏览器?

open-source - Safari的“阅读器模式”-开源解决方案?