重新加载页面(或更改历史记录状态)后,浏览器默认情况下会恢复滚动位置。在某些浏览器中,这种情况会有延迟发生(滚动从顶部跳转到持久位置)。在设置初始滚动位置后立即运行回调的最佳方式是什么?
发布于 2020-08-06 23:56:18
我怀疑你所描述的延迟跳转是由于window或document在加载以适应其内容时调整了大小。
您应该能够在它的resize事件中检测到这一点。但是,如果想很好地初始化或加载内容,您实际上想知道元素何时变得可见-为此,您可以使用IntersectionObserver。
就我个人而言,我发现了一种在加载内容时防止闪烁/跳转的快捷方法,那就是简单地将CSS动画应用到它上,浏览器会为你检测到inersection。
https://stackoverflow.com/questions/63286759
复制相似问题