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

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。

posted @ 2016-09-24 17:38  陆漫漫  阅读(1228)  评论(0编辑  收藏  举报