Chrome中的ScrollIntoView

时间:2013-10-01 08:42:01

标签: javascript google-chrome

我用:

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

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

2 个答案:

答案 0 :(得分:6)

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

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

或者如果你正在使用jQuery:

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

这将确保您的代码以您想要的方式运行。

答案 1 :(得分:0)

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

根据我的经验,其他浏览器没有这种行为。