获取滚动条高度的兼容问题

Posted 陆漫漫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取滚动条高度的兼容问题相关的知识,希望对你有一定的参考价值。

function getScrollTop() {  
     var scrollPos;  
    if (window.pageYOffset) {  
     scrollPos = window.pageYOffset;
    }else if (document.compatMode && document.compatMode != BackCompat){ 
    scrollPos = document.documentElement.scrollTop;
}else if (document.body) {
    scrollPos = document.body.scrollTop;
 }   
    return scrollPos;   
}

几点说明:

1.pageXOffset 设置或返回当前页面相对于窗口显示区左上角的 X 位置。pageYOffset 设置或返回当前页面相对于窗口显示区左上角的 Y 位置。

2.所有主流浏览器都支持 pageXOffset 和 pageYOffset 属性。

注意: IE 8 及 更早 IE 版本不支持该属性,但可以使用 "document.body.scrollLeft" 和 "document.body.scrollTop" 属性 。

3.BackCompat:标准兼容模式关闭。CSS1Compat:标准兼容模式开启

4.当document.compatMode等于BackCompat时,浏览器客户区宽度是document.body.clientWidth;
 当document.compatMode等于CSS1Compat时,浏览器客户区宽度是document.documentElement.clientWidth。

以上是关于获取滚动条高度的兼容问题的主要内容,如果未能解决你的问题,请参考以下文章

jquery获取滚动条高度和位置

JavaScript—— scroolleft----offsetleft 系列的含义以及浏览器兼容问题

jquery如何获取元素的滚动条高度等实现代码

如何获取bootstrap滚动条的高度

BootStrap有用代码片段(持续总结)

小程序页面获取滚动条高度