您的位置:首页 > Web前端 > JavaScript

javascript获得滚动条高度

2016-07-08 15:53 274 查看
先上代码

/**
* 查询窗口滚动条的位置
* @param {[window]} w [窗口对象]
*/
function getScrollOffset(w){
//使用指定的窗口,如果不带属性则使用当前窗口
var win = w || window;

//除了ie8以及更早的版本以外 其他浏览器都ok
if (w.pageXOffset != null){
return {
x : w.pageXOffset,
y : w.pageYOffset
};
}

// 对标准模式下的ie
var d = w.document;
if(document.compatMode == "CCS1Compat")
return {
x : d.documentElement.scrollLeft,
y : d.documentElement.scrollTop
};

//对怪异模式下的浏览器
return {
x : d.body.scrollLeft,
y : d.body.scrollTop
}
}


代码摘自权威指南,适配各种浏览器。

另外说明一下,documentElement为整个节点树的根结点,也就是
<html>
标签,body为
<body>
标签,怪异模式下都要从body来获得这些属性。

滚动条监听:

window.onscroll = function(){
//监听的事件
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript 浏览器