js取滚动条的尺寸实例代码

分享一个js取滚动条的尺寸的函数代码,很简单,很实用。

创建一个嵌套节点,让外层节点产生滚动条,然后用offsetWidth - clientWidth即可获得滚动条宽度。

注意,为了避免页面抖动,可以设置外层元素position:absolute和visibility:hidden

完整代码:


function getScrollWith(){
var wrap = setAttributes(document.createElement(‘div‘),{
style : {
width : ‘200px‘,
height: ‘200px‘,
overflow: ‘auto‘,
position:‘absolute‘,
visibility:‘hidden‘
}
})
var inner = setAttributes(document.createElement(‘div‘),{
style : {
width : ‘100px‘,
height: ‘2000px‘
}
})
document.body.appendChild(wrap);
wrap.appendChild(inner);
var w = wrap.offsetWidth - wrap.clientWidth;
document.body.removeChild(wrap);
wrap = null;
inner = null;
return w;
} www.jbxue.com
function setAttributes(elem,opts){
for(var key in opts){
if(typeof opts[key] == ‘string‘){
elem[key] = opts[key];
}else{
if(!elem[key]){
elem[key] = {};
}
setAttributes(elem[key],opts[key]);
}
}
return elem;
}

js取滚动条的尺寸实例代码,布布扣,bubuko.com

时间: 2025-01-01 15:43:13

js取滚动条的尺寸实例代码的相关文章

js数组元素由小到大排序实例代码

js数组元素由小到大排序实例代码:有时候需要对数组中的数字进行排序,下面是一段将数组中数字由小到大排序的代码实例,希望能够帮到大家.实例代码如下: var arr=[2,55,55,1,75,3,9,35,70,166,432,678,32,98]; var len=arr.length; console.log(arr.join(",")); var newarr=[]; for(var i=0;i<len;i++){ newarr.push(Math.min.apply(nu

js的dom测试及实例代码

js的dom测试及实例代码 一.总结 一句话总结: 1.需要记得 创建 标签和创建文本节点都是document的活:document.createTextNode("Rockets的姚明"); 2.appendChild就是 标签 都可以干的活:document.body.appendChild(hr1); 1.需要记得 创建 标签和创建文本节点都是document的活? var div1 = document.createElement("div"); var t

js设计模式之实现观察者模式实例代码

前端界面 html代码 <body> <select name="" id="select"> <option value="">请选择风格</option> <option value="male">男式风格</option> <option value="female">女士风格</option> </

jQuery对html元素的取值与赋值实例详解

jQuery对html元素的取值与赋值实例详解 转载  2015-12-18   作者:欢欢   我要评论 这篇文章主要介绍了jQuery对html元素的取值与赋值,较为详细的分析了jQuery针对常见html元素的获取与赋值技巧,非常简单实用,需要的朋友可以参考下 本文实例讲述了jQuery对html元素的取值与赋值方法.分享给大家供大家参考,具体如下: Jquery给基本控件的取值.赋值 TEXTBOX: ? 1 2 3 4 5 var str = $('#txt').val(); $('#

跟随滚动条滚动的div代码实例

跟随滚动条滚动的div代码实例:有时候我们希望当滚动网页滚动条的时候,div能够随着滚动条而滚动,这样就能够基本保持处于它相对于窗口所在的位置,下面是一段代码实例,基本实现了此功能,不过还是有不足之处,就是当拖动滚动条的时候,具有抖动的情况,也算差强人意吧.代码实例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author&quo

js取整数与取余数实例详解

分享下js取整数.取余数的方法. 1.丢弃小数部分,保留整数部分parseInt(5/2)2.向上取整,有小数就整数部分加1 Math.ceil(5/2)3,四舍五入.Math.round(5/2)4,向下取整 Math.floor(5/2)Math 对象的方法FF: Firefox, N: Netscape, IE: Internet Explorer方法 描述 FF N IEabs(x) 返回数的绝对值 1 2 3acos(x) 返回数的反余弦值 1 2 3asin(x) 返回数的反正弦值

js实现的数字四舍五入效果代码实例

js实现的数字四舍五入效果代码实例:下面直接给出能够截取指定位数字符串,且具有四舍五入效果的代码: var num=3.1415926; console.log(num.toFixed(3)); toFixed()函数可以参阅javascript的Number对象的toFixed()方法一章节. 原文地址是:http://www.softwhy.com/forum.php?mod=viewthread&tid=11973 更多内容可以参阅:http://www.softwhy.com/javas

原生js实现的创建和删除元素实例代码

原生js实现的创建和删除元素实例代码:在实际应用中,往往需要动态的创建和删除指定的元素,下面就通过代码实例介绍一下如何实现此功能.代码实例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title&g

js实现的div拖动效果实例代码

js实现的div拖动效果实例代码:div的拖动效果在很多效果中都有应用,当然还有很多附加的功能,本章节只是给拖动效果,并介绍一下它的实现过程.代码实例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <t