JS自定义滚动条效果
作者:李尚书
这篇文章主要为大家详细介绍了JS自定义滚动条效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了JS自定义滚动条的具体代码,供大家参考,具体内容如下
<head> <meta charset="UTF-8"> <title></title> <style type="text/css"> #all{ width: 500px; height: 50px; background-color: sandybrown; border-radius: 25px; margin: 0 auto; position: relative; } #div1{ width: 50px; height: 50px; border-radius: 50%; background-color: rosybrown; position: absolute; } #box{ background-color: yellow; position: absolute; top: 200px; left: 200px; } </style> </head> <body> <div id="all"> <div id="div1"></div> </div> <div id="box"></div> <script type="text/javascript"> var oAll = document.getElementById("all"); var oDiv1 = document.getElementById("div1"); var oBox = document.getElementById("box"); var maxL = oAll.clientWidth - oDiv1.offsetWidth; oDiv1.onmousedown = function(){ var ev = ev || window.event; var lessX = ev.clientX - oDiv1.offsetLeft; document.onmousemove = function(){ var ev = ev || window.event; var posL = ev.clientX - lessX; if(posL<0){ posL = 0; } if(posL>maxL){ posL = maxL; } oDiv1.style.left = posL + "px"; //滚动条移动的百分比 //oDiv1.offsetLeft/maxL var per = posL/maxL; //定义宽0~300 oBox.style.width = 300*per+"px"; oBox.style.height = 300*per+"px"; oBox.style.marginTop = -oBox.offsetHeight/2+"px"; oBox.style.marginLeft = -oBox.offsetWidth/2+"px"; } } document.onmouseup =function(){ document.onmousemove = null; } </script> </body>
更多关于滚动效果的精彩文章点击下方专题:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。