Scroll 页面刷新时Safari强制页面滚动到顶部失败

Scroll 页面刷新时Safari强制页面滚动到顶部失败,scroll,mobile-safari,page-refresh,Scroll,Mobile Safari,Page Refresh,我正在使用react-to-implement构建一个网站。首先,我们将页面滚动到底部或中间位置。然后,我们在iphone safari浏览器中单击刷新按钮,页面奇怪地滚动到永久位置。我尝试将flex布局更改为浮动布局,并添加pageshow事件侦听器,使用 窗口。滚动到(0,0) .但在safari mobile中,page仍停留在永久位置 我猜问题是页面保存了上次查看的位置,但是当页面刷新时,页面内容没有完全显示,页面只能滚动到永久位置。最后,页面的其余部分显示出来。并且在页面滚动到永久位置

我正在使用react-to-implement构建一个网站。首先,我们将页面滚动到底部或中间位置。然后,我们在iphone safari浏览器中单击刷新按钮,页面奇怪地滚动到永久位置。我尝试将flex布局更改为浮动布局,并添加pageshow事件侦听器,使用

窗口。滚动到(0,0)

.但在safari mobile中,page仍停留在永久位置

我猜问题是页面保存了上次查看的位置,但是当页面刷新时,页面内容没有完全显示,页面只能滚动到永久位置。最后,页面的其余部分显示出来。并且在页面滚动到永久位置之前,页面显示事件已经提前触发。
如何在页面刷新时强制将页面滚动到顶部(window.scroll除外)?如何解决safari浏览器的这种奇怪行为?

我有一个与您在ios safari上使用react相同的问题,我找到的唯一修复方法是在
组件安装中使用setTimeout,但我真的不喜欢这种解决方案

componentDidMount() {
  setTimeout(() => {
        window.scrollTo(0, 0);
    }, 800); 
}
希望它能帮助您使用window.scroll(0,0)而不是window.scrollTo()