js滚轮事件 js自定义滚动条的实现
网络编程 2021-07-04 15:02www.168986.cn编程入门
这篇文章主要为大家详细介绍了js滚轮事件,自定义滚动条的实现,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了js自定义滚动条的实现的具体代码,供大家参考,具体内容如下
描述
自定义滚动条的实现
效果
实现
<!DOCTYPE html> <html lang=""> <head> <meta charset="utf-8"> <title></title> <style> {margin: 0;padding: 0;} html,body { width: 100%;height: 100%;} #box { width: 100%; height: 100%; overflow: hidden;} /一个个划过去的页面块/ .ball { width: 100%; height: 500px; font-size:100px; font-weight:bold; color: skyblue; text-align: center; line-height:500px; } ///滚动栏/ #scroll { width: 20px; height: 96%; position: fixed; : 2%; right: 5px; border-radius: 10px; background-color: rgba(235, 233, 233, 0.5); z-index: 9998; opacity: 0; } ///滚动栏上的小长条/ #scrollBar { position: absolute; z-index: 1;///定在上面/ width: 20px; height: 40px; border-radius: 10px; left: 0; : 0; background-color: red;opacity: 0.6; } </style> </head> <body style="overflow:hidden;"> <div id="box"> <div id="content"> <!--//营造div色块交替的感觉--> <p class="ball" style="background-color:#656565;">1</p> <p class="ball" style="background-color:#ffffff;">2</p> <p class="ball" style="background-color:#656565;">3</p> <p class="ball" style="background-color:#ffffff;">4</p> <p class="ball" style="background-color:#656565;">5</p> <p class="ball" style="background-color:#ffffff;">6</p> </div> </div> <div id="scroll"> <div id="scrollBar"></div> </div> </body> </html> <script type="text/javascript"> var content = document.getElementById("content"); var box = document.getElementById("box"); var scroll = document.getElementById("scroll"); var scrollBar = document.getElementById("scrollBar"); var Step = { value : 0, size : 20, maxVal : Math.ceil((content.offsetHeight-document.body.offsetHeight)/20), getCurrentVal:function(){ return this.value; }, next:function(){ if(this.value==this.maxVal) return; this.value++; }, pre:function(){ if(this.value==0) return; this.value--; }, getDistance:function(){ return this.getCurrentVal()this.size; }, update:function(){ this.maxVal = Math.ceil((content.offsetHeight-document.body.offsetHeight)/this.size); } } window.addEventListener("resize",function(){ Step.update(); }); box.addEventListener("DOMMouseScroll",scrollfunc); box.addEventListener("mousewheel", scrollfunc); function scrollfunc(e){ if(e.type=="mousewheel"){ //非FF e.wheelDelta<0?Step.next():Step.pre(); } else { //FF e.detail>0?Step.next():Step.pre(); } document.title = Step.getCurrentVal(); box.scrollTop = Math.min(Step.getDistance(),content.offsetHeight-document.body.offsetHeight); //计算滚动比例 var percent = box.scrollTop/(content.offsetHeight-document.body.offsetHeight); //显示滚动条 scroll.style.opacity = 100; //计算滚动条的位置 scrollBar.style. = (scroll.offsetHeight-scrollBar.offsetHeight)percent + "px"; } </script>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持狼蚁SEO。
上一篇:JavaScript进制转换实现方法解析
下一篇:vue实现扫码功能
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程