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

我在我的 Web 应用程序中使用此代码返回页面:


window.history.go(-1);

它运行良好,但会将用户带到他们在页面上的同一垂直位置。返回后,如何让页面的顶部显示?


我试过:


<script>

window.history.go(-1);

window.scrollTo(0, 0); // This doesn't execute.

</script>

我不需要流畅的动画或过渡。关键只是确保命令在返回后运行。


慕婉清6462132
浏览 90回答 3
3回答

BIG阳

好吧,在尝试了几件事之后,这些是唯一对我有用的两个。查询$(window).on("pageshow", function(event) {&nbsp; &nbsp; window.scrollTo(0, 0);});JavaScriptwindow.onpageshow = function(event) {&nbsp; &nbsp; window.scrollTo(0, 0);};我希望它能帮助别人。

青春有我

不过,此方法适用于 Firefox,不适用于 Chrome。可以参考这个问题回溯 Firefox 的历史,JavaScript 不会运行更多细节。您可以在 first_page.html 中使用此代码:<script>&nbsp; &nbsp; window.onunload = function () { };&nbsp; &nbsp; scrollTo(0, 0);</script>onunload 确保即使按下后退按钮或使用 window.history.go(-1) 也会执行 scrollTo(0, 0);

LEATH

使用 history.scrollRestoration:if (history.scrollRestoration) {&nbsp; history.scrollRestoration = 'manual';}history.back();利润!MDN 上的 scrollRestoration
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript