Scrolltop没有到达正确的位置

时间:2015-11-17 18:53:58

标签: javascript jquery html

我正在尝试使用以下代码将div的顶部集中在锚点击上。

$('html, body').animate({scrollTop: $("#" + divid).offset().top}, 100);

但是,它不是滚动到div的顶部,而是焦点转到div内的位置。我用Page Ruler chrome addon中的顶部值交叉检查div的offset().top值,它们是同步的。理想情况下,它应该滚动到div的顶部。任何建议都会非常有用。

1 个答案:

答案 0 :(得分:1)

你的小提琴似乎有效(除了你忘记了点击处理程序中的preventDefault())。

通常,您需要考虑滚动容器(您的案例中的窗口)上的边框,填充,边距。对于通用解决方案,请查看this gist