有什么区别:
$(window).scrollTop()
和
$(document).scrollTop()
感谢。
答案 0 :(得分:141)
他们都将具有相同的效果。
但是,正如评论中所指出的: $(window).scrollTop()
受到更多网络浏览器的支持而不是$('html').scrollTop()
。
答案 1 :(得分:33)
首先,您需要了解窗口和文档之间的区别。窗口对象是顶级客户端对象。窗口对象上方没有任何内容。 Javascript是面向对象的语言。您从一个对象开始,并将方法应用于它的属性或它的对象组的属性。例如,文档对象是窗口对象的对象。要更改文档的背景颜色,您需要设置文档的bgcolor属性。
window.document.bgcolor = "red"
要回答您的问题,窗口和文档scrollTop之间的最终结果没有区别。两者都会给出相同的输出。
一般使用文档主要是注册事件和使用窗口来做滚动,scrollTop和调整大小等事情。
答案 2 :(得分:5)
Cross browser way of doing this is
var top = ($(window).scrollTop() || $("body").scrollTop());
答案 3 :(得分:0)
我刚刚遇到了与此处描述的scrollTop
类似的一些问题。
最后,我使用选择器$('*').scrollTop(0);
如果你有不想要影响的元素但它绕过Document,Body,HTML和Window差异,那就不完美了。如果它有帮助...