这是简单的代码
window.onload = function () {
window.addEventListener('scroll', function () {
alert('asd');
});
};
当您在Firefox中刷新滚动页面时,您不会看到警报,但在Chrome中有时会触发警报,有时不会。同一页面,同一滚动,只是多次刷新。
问题是如何避免在Chrome中在刷新后加载时触发滚动事件?
问题在于,DOMContentLoaded可以解决此问题,但我有一个带有坐标的阻止动画(滚动然后固定),并且使用DOMContentLoaded时坐标是错误的。
附言:不允许使用jQuery。
附言2.
if ('scrollRestoration' in history) {
history.scrollRestoration = 'manual';
}
并非固定解决方案,但是可以采用变通方法。