zoukankan      html  css  js  c++  java
  • 获取滚动条的尺寸

    这个比较简单,做个记录而已。

    创建一个嵌套节点,让外层节点产生滚动条,然后用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;
    }
    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;
    }



  • 相关阅读:
    小作业5
    小作业4
    Matplotlib基础
    Numpy学习笔记(下篇)
    Numpy学习笔记(上篇)
    机器学习的经典算法与应用
    opencv学习笔记D01
    Markdown新手入门
    python之生成器yeild
    pyinstaller打包.py程序为.exe操作指南
  • 原文地址:https://www.cnblogs.com/xesam/p/2262957.html
Copyright © 2011-2022 走看看