为了账号安全,请及时绑定邮箱和手机立即绑定

返回历史记录后,滚动到顶部

返回历史记录后,滚动到顶部

慕婉清6462132 2022-12-29 15:35:01
我在我的 Web 应用程序中使用此代码返回页面:window.history.go(-1);它运行良好,但会将用户带到他们在页面上的同一垂直位置。返回后,如何让页面的顶部显示?我试过:<script>window.history.go(-1);window.scrollTo(0, 0); // This doesn't execute.</script>我不需要流畅的动画或过渡。关键只是确保命令在返回后运行。
查看完整描述

3 回答

?
BIG阳

TA贡献1859条经验 获得超6个赞

好吧,在尝试了几件事之后,这些是唯一对我有用的两个。


查询

$(window).on("pageshow", function(event) {

    window.scrollTo(0, 0);

});

JavaScript

window.onpageshow = function(event) {

    window.scrollTo(0, 0);

};

我希望它能帮助别人。


查看完整回答
反对 回复 2022-12-29
?
青春有我

TA贡献1784条经验 获得超8个赞

不过,此方法适用于 Firefox,不适用于 Chrome。可以参考这个问题回溯 Firefox 的历史,JavaScript 不会运行更多细节。

您可以在 first_page.html 中使用此代码:


<script>

    window.onunload = function () { };

    scrollTo(0, 0);

</script>

onunload 确保即使按下后退按钮或使用 window.history.go(-1) 也会执行 scrollTo(0, 0);


查看完整回答
反对 回复 2022-12-29
?
LEATH

TA贡献1936条经验 获得超6个赞

使用 history.scrollRestoration:


if (history.scrollRestoration) {

  history.scrollRestoration = 'manual';

}

history.back();

利润!


MDN 上的 scrollRestoration


查看完整回答
反对 回复 2022-12-29
  • 3 回答
  • 0 关注
  • 89 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信