我向我的站点添加了一些页面转换。现在,只要有人点击浏览器后退按钮,就会将他重定向到他以前的站点,他在该页面上的滚动位置会自动恢复。如果用户在上一页上向下滚动,此行为会导致在当前窗口淡出前不到一秒的时间内出现丑陋的页面跳转。
1) 我可以延迟此默认浏览器行为吗?
2) 如果 1 不可能,我是否可以禁用默认行为并改为手动存储和恢复滚动位置?
最佳答案
虽然它是实验性的,但您可以尝试调整 History scrollRestoration从 “自动”
到 “手动”
。
有几个polyfills out也有助于跨浏览器的兼容性。
if ('scrollRestoration' in history) {
// Back off, browser, I got this...
history.scrollRestoration = 'manual';
}
关于JavaScript:防止浏览器在使用后退按钮时恢复滚动位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48308390/