在 jQuery 中如何确定窗口的高度和滚动位置?

我需要获取 jQuery 中窗口的高度和滚动偏移量,但是我在 jQuery 文档或 Google 中没有找到这些。

我有90% 的把握可以访问 height 和 scrollTop 元素(可能包括窗口) ,但是我就是找不到具体的引用。

356909 次浏览
$(window).height()


$(window).width()

还有一个 jquery 插件来确定元素的位置和偏移量

Http://plugins.jquery.com/project/dimensions

元素的滚动偏移量 = offsetHeight 属性

来自 jQuery 文档:

const height = $(window).height();
const scrollTop = $(window).scrollTop();

Http://api.jquery.com/scrolltop/
Http://api.jquery.com/height/

http://api.jquery.com/height/(注意: 窗口和文档对象之间的区别)

$(window).height();   // returns height of browser viewport
$(document).height(); // returns height of HTML document

http://api.jquery.com/scrollTop/

$(window).scrollTop() // return the number of pixels scrolled vertically

纯 JS

window.innerHeight
window.scrollY

比 jquery 快10倍以上(代码的大小也差不多) :

enter image description here

这里您可以在您的机器上执行测试: https://jsperf.com/window-height-width

如果需要滚动到某个元素的某个点,可以使用 Jquery 函数上下滚动。

$('html, body').animate({
scrollTop: $("#div1").offset().top
}, 'slow');