如何让chrome忘记页面滚动位置?

hh5*_*188 11 javascript css scroll google-chrome

例如,我打开一个网页,向下滚动到某个位置,

然后我刷新Chrome浏览器,浏览器可以再次滚动前一个位置

如何使用javascript或css让浏览器忘记滚动?

我试过了$(window).scrollTop(0),但它不起作用

小智 7

在下面的问题中已解决。

刷新页面后是否禁用浏览器的自动滚动?

// bypass auto scrolling.
if ('scrollRestoration' in history) {
  history.scrollRestoration = 'manual';
}
Run Code Online (Sandbox Code Playgroud)


Afs*_*ani 3

我可以说的一个简单方法是在页面加载时运行此代码:

document.location = "#";
Run Code Online (Sandbox Code Playgroud)

或者

window.scrollTo(0);
Run Code Online (Sandbox Code Playgroud)

它再次将浏览器视口设置到页面顶部。

  • 如果我没记错的话,在页面加载时执行“window.scrollTo(0)”,Chrome 会覆盖您的滚动。 (4认同)
  • 支持@JanDvorak 的发现。window.onload 中的“setTimeout”可以工作,但那时窗口已经滚动了。 (3认同)
  • 我的意思是,即使是“window.onload”对于“window.scrollTo”来说也太早了。不过,在“window.onload”之后几毫秒就可以了。 (2认同)