在 Chrome 中滚动到视图

ScrollIntoView in Chrome

本文关键字:视图 滚动 Chrome      更新时间:2023-09-26

我使用:

var el = document.getElementById("centd");
el.scrollIntoView(true);

以滚动到特定位置。在每个浏览器中它都可以正常工作,但是在Chrome中,当页面加载时,它会滚动到该点,但是一两秒钟后(页面加载完成后(,它会滚动回去开始。

确保在页面完成加载后运行所有 JavaScript 代码:

document.addEventListener('DOMContentLoaded', function() {
   // your code here
}, false);

或者如果你使用的是jQuery:

$(document).ready(function(){
// your code
});

这将确保您的代码按预期方式运行。

我觉得

它应该是一个功能而不是一个错误(但找不到支持这一理论的证据(:它第一次加载页面时工作正常/在新选项卡中,但是一旦用户滚动,该滚动位置就会覆盖任何scrollToscrollIntoView命令(以您描述的这种短暂闪烁的方式, 并且我目前正在尝试理解(——即使您等待文档准备就绪。

根据我的经验,其他浏览器不共享此行为。