滚动高度

链接:https://www.jianshu.com/p/d267456ebc0d

参数 说明
scrollHeight页面的总长度
clientHeight浏览器可容器可视区域的高度(不含边框、滚动条宽度)
offsetHeight浏览器可容器可视区域的高度(含边框、滚动条宽度)
scrollTop滚动条当前位置到页面顶端的长度

这几个概念,在网上浩如烟海的文档中基本都是文字解释,《JavaScript高级程序设计(第3版)》给出的图解还是有些晦涩难懂,很难想象具体在窗口中指哪些部分,所以一直感到懵懂。这次项目中需要实现上拉加载的效果,花了不少时间,请教了不少同行,最后加工出了这篇图文解释。

const scrollLeft = Math.max(document.documentElement.scrollLeft,       
document.body.scrollLeft); 
const scrollTop = Math.max(document.documentElement.scrollTop, 
document.body.scrollTop);
原因: 用Math.max()方法是因为获取方法不兼容时,scrollTop始终为0,其他属性同理;