pageNav
组件的产品列表。我每页显示8个产品,因此,当您单击NextPage
按钮(位于列表的底部)时,我需要将用户滚动回到顶部,因此您将看到下一个的顶部页。
这是因为我的ResultList
组件基本上将同步重新呈现(无需API调用)以呈现下一页的产品。如果我不滚动到顶部,您将看到下一页的底部,这没有任何意义。
当我单击NextPage
按钮时,我的操作方式:
window.scrollTo({
top: 0,
behavior: 'smooth'
});
我这样做是因为,因为我认为平滑的效果使用户100%知道页面上正在发生什么。
首次加载后,Chrome正常运行,您可以向上和向下滚动就可以了。但是,在单击PrevPage
或NextPage
按钮更改为查看其他产品之后,您会看到自动平滑滚动正返回页面顶部,但是从那时起,您将变得非常不稳定并拖延滚动页面。它到处都是卡住的。
Firefox似乎可以流畅地滚动。即使多次更改页面后,用户滚动也可以正常工作。
这仅在Mobile Chrome上发生。 Firefox运行正常。 Safari未经测试。
Samsung Galaxy A5 2017
Android 8.0.0
Chrome Mobile 79.0.3945.136
我删除了滚动效果。我必须要做的:
window.scrollTo({
top: 0
});
现在它又可以正常工作了,但是我在页面过渡上失去了流畅的效果。
问题
有人遇到过这个问题吗?是否有解决方法,所以我可以保持平滑效果?
在我的React应用中,有一个带有pageNav组件的产品列表。我每页显示8种产品,所以当您单击NextPage按钮(位于列表底部)时,我需要滚动...