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

Javascript 如何让chrome忘记页面滚动位置?,javascript,css,google-chrome,scroll,Javascript,Css,Google Chrome,Scroll,例如,我打开一个网页,向下滚动到某个位置 然后我刷新chrome浏览器,浏览器可以再次滚动上一个位置 如何使用javascript或css让浏览器忘记滚动 我尝试了$(window).scrollTop(0),但它不起作用我可以说的一个简单方法是在页面加载时运行此代码: document.location = "#"; 或 它再次将浏览器视口设置为页面顶部。这里有一个干净的方法来完成此操作 window.addEventListener('unload', function(e){ do

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

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

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


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

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

document.location = "#";


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

这里有一个干净的方法来完成此操作

window.addEventListener('unload', function(e){
   document.body.style.display = 'none';
});

只需将正文显示设置为“无”,您就不必担心在卸载之前浏览器会闪烁到页面顶部,滚动位置将自动重置为0。

下面的问题解决了这一问题

这对我很有用:

JS方式:

window.addEventListener('unload', function(e){
window.scrollTo(0, 0)
});
Jquery方式:

$(window).load(function() {
 $(window).scrollTop(0);
});

您是否尝试在
设置超时内
.scrollTop(0)
?我唯一能想到的就是滚动到足够晚。比如,页面加载50毫秒后。但它似乎有点黑。@Jan它有点黑,另一方面整个主题有点黑。你可能需要将它放在准备就绪的文档中,在这种情况下,它应该可以工作。如果我没记错的话,请执行
窗口。在页面加载时滚动到(0)
,Chrome会覆盖你的滚动。我的意思是,即使是
窗口。对于
窗口。滚动到
来说,onload
也太早了。在
窗口后几毫秒。不过,onload应该可以。如果我想让页面向左滚动,而不是向上滚动,我该怎么办?附议@JanDvorak的发现。window.onload中的
setTimeout
可以工作,但此时窗口已经滚动。
window.scrollTo(0)
在Chrome和Firefox中抛出“无法转换为字典”。似乎需要像这样指定x和y:
窗口。滚动到(0,0)
正文
隐藏不起作用;更改为
窗口。滚动至(0,0)会的。这很有效,但需要对我进行一些额外的调整。这很简单,花了2天时间才找到有关滚动恢复的信息。。。非常感谢。
window.addEventListener('unload', function(e){
window.scrollTo(0, 0)
});
$(window).load(function() {
 $(window).scrollTop(0);
});