1、获取div的文档总高度(必须DOM操作):
var scrollHeight=document.getElementById("inner").scrollHeight;
// jq中没有scrollHeight -只有scrollTop():
// 所以用DOM操作获取元素并计算scrollHeight。
1
2
3
4
2、获取div的窗口显示高度:
var height=$("#inner").height()
//或
var height=document.getElementById("inner").offsetHeight
1
2
3
3、获取div的卷上去高度:
var scrollTop=$("#inner").scrollTop();
//或
var scrollTop=document.getElementById("inner").scrollTop;
1
2
3
4、三者关系:
scrollHeight >= height + scrollTop
1
5、获取div距离文档(body)顶部的高度 $(“#inner”).offset().top
6、获取div距离父元素顶部的距离 $(“#inner”).position().top
7、获取div距离窗口(window)顶部的距离 (“#inner”).offset().top - (“body”).scrollTop()
A
Blue
offset()方法的定义和用法:
此方法返回或设置所匹配元素相对于document对象的偏移量。
获取匹配元素在当前document的相对偏移。
返回的对象包含两个整型属:top和left。
此方法只对可见元素有效。
红色区域的窗口高度:
不存在水平滑动时,窗口window高度 + 窗口window滚上去高度 <= 文档body总高度
同理,不存在水平滑动时,div的window高度 <= div的window高度 + div的window滚上去高度 <= 文档div的总高度
存在水平滑动时,div的window高度 <= div的window高度 + div的window滚上去高度 。
竖直滑到底部时:div的window高度 + div的window滚上去高度= 文档div的总高度+水平滚动条的高度
c距离文档body顶部距离(不变):
c距离父元素b顶部的距离(不变):
c距离窗口window顶部的距离:
body卷上去: