• 自定义滚动条


    cv党:

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title></title>
    <style>
    #out{border: 1px solid black; 600px;overflow: hidden;}
    #inner{white-space: nowrap;font-size: 0;}
    #inner div{ 400px;height: 300px;display: inline-block;text-align: center;line-height: 300px;
    outline: 1px solid blueviolet;font-size: 30px;}
    #scrollout{ 600px;height: 20px;border: 1px solid black;}
    #scrollinner{height: 100%;background-color: chartreuse;border-radius:3px;margin-left: 0;}
    </style>
    </head>
    <body>
    <div id="out"><div id="inner">
    <div>0</div>
    <div>1</div>
    <div>2</div>
    <div>3</div>
    <div>4</div>
    <div>5</div>
    <div>6</div>
    <div>7</div>
    <div>8</div>
    </div></div>
    <div id="scrollout"><div id="scrollinner"></div></div>
    </body>
    </html>
    <script src="http://cdn.bootcss.com/jquery/1.12.1/jquery.js"></script>
    <script type="text/javascript">
    myScroll($("#out"),$("#inner"),$("#scrollinner"))
    function myScroll(mainout,maininner,scrollInner){
    function countwidth(){
    return maininner.children().length*maininner.children().eq(0).width()
    }
    var thewidth =countwidth() ////拖块的宽度计算
    scrollInner.width(mainout.width()* mainout.width()/thewidth);
    var ismove = false; ////查看鼠标是否按下
    var oldX /////记录初始位置
    scrollInner.mousedown(function(e){
    ismove = true
    oldX=parseInt(e.clientX)
    })
    $(document).mouseup(function(){
    ismove = false
    })
    $(document).mousemove(function(e){
    console.log(ismove);
    if(!ismove) return
    var newX=parseInt(e.clientX)
    var distance=newX-oldX;
    if(parseInt(scrollInner.css("margin-left"))<=0&&distance<0){ ////判断是否超出左边界
    return
    }
    if(distance>0&&parseInt(scrollInner.css("margin-left"))>= mainout.width()-scrollInner.width()){////判断是否超出右边界
    return
    }
    var marginLeft=parseInt(scrollInner.css("margin-left"))+ +distance
    marginLeft = marginLeft<0?0:marginLeft;//////超出左边
    marginLeft = (marginLeft> mainout.width()-scrollInner.width())? mainout.width()-scrollInner.width():marginLeft ////超出右边
    scrollInner.css("margin-left",marginLeft);
    maininner.css("margin-left",-marginLeft*thewidth/ mainout.width())
    oldX=newX
    })
    }

    </script>

  • 相关阅读:
    centos 7常用需求
    python处理mysql的一些用法
    python下的queue
    2017-1-17不错的模块和工具
    wordpress钩子和钩子函数
    python中字典的使用
    linux下查看系统信息
    apk安全测试思路
    rhel 5.8 and 6.4 yum配置
    分布式文件系统
  • 原文地址:https://www.cnblogs.com/ccgdnf/p/5438895.html
Copyright © 2020-2023  润新知