javascript滚轮控制模拟滚动条


Posted in Javascript onOctober 19, 2016

此实例通过对滚轮事件的监听,通过滚轮控制滚动条的上下移动,可以将其修改后运用与使用滚轮缩放图片、改变透明度等特效。

<!DOCTYPE html> 
<html> 
 <head> 
  <meta charset="UTF-8"> 
  <title></title> 
  <style type="text/css"> 
   *{ 
    margin: 0; 
    padding: 0; 
   } 
   #boxwrap{ 
    position: relative; 
    width: 15px; 
    height: 500px; 
    margin: 50px auto; 
    box-sizing: border-box; 
    border: 1px solid gainsboro; 
    border-radius: 6px; 
   } 
   #box{ 
    position: absolute; 
    left: 0px; 
    top: 0px; 
    width: 13px; 
    height: 30px; 
    background: gray; 
    border-radius: 6px; 
   } 
  </style> 
  <script type="text/javascript"> 
   window.onload = function (){ 
    var boxwrp = document.getElementById('boxwrap'); 
    var box = document.getElementById('box'); 
    //兼容firefox 
    if(boxwrp.addEventListener){ 
     document.addEventListener("DOMMouseScroll", fn, false); 
    } 
    document.onmousewheel = fn;//兼容IE、chrome 
     
    function fn(ev){ 
     var ev = ev||event; 
     var bool = false; 
     //IE、chrome 向上:120,向下:-120 
     if(ev.wheelDelta){ 
      bool= ev.wheelDelta > 0? true : false; 
     } 
     //firefox 向上:-3,向下:3 
     else{ 
      bool= ev.detail < 0? true : false; 
     } 
      
     if(bool){ 
      if(box.offsetTop>=10){ 
       box.style.top = box.offsetTop - 10 + "px"; 
      } 
      else{ 
       box.style.top = 0; 
      } 
       
     } 
     else{ 
      if(box.offsetTop<=boxwrp.offsetHeight-box.offsetHeight-10){ 
       box.style.top = box.offsetTop + 10 + "px"; 
      } 
      else{ 
       box.style.top = boxwrp.offsetHeight - box.offsetHeight + "px"; 
      } 
     } 
    } 
   } 
  </script> 
 </head> 
 <body> 
  <div id="boxwrap"> 
   <div id="box"></div> 
  </div> 
 </body> 
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
身份证号码前六位所代表的省,市,区, 以及地区编码下载
Apr 12 Javascript
window.location.hash 使用说明
Nov 08 Javascript
一个级联菜单代码学习及removeClass与addClass的应用
Jan 24 Javascript
jquery的冒泡事件的阻止与允许(三种实现方法)
Feb 01 Javascript
jquery select 设置默认选中的示例代码
Feb 07 Javascript
JavaScript6 let 新语法优势介绍
Jul 15 Javascript
JavaScript定时器实现的原理分析
Dec 06 Javascript
原生JS改变透明度实现轮播效果
Mar 24 Javascript
基于Vue 服务端Cookies删除的问题
Sep 21 Javascript
Vue 事件处理操作实例详解
Mar 05 Javascript
茶余饭后聊聊Vue3.0响应式数据那些事儿
Oct 30 Javascript
nuxt.js添加环境变量,区分项目打包环境操作
Nov 06 Javascript
Vue.js绑定HTML class数组语法错误的原因分析
Oct 19 #Javascript
微信小程序 教程之wxapp视图容器 swiper
Oct 19 #Javascript
微信小程序 教程之wxapp视图容器 scroll-view
Oct 19 #Javascript
微信小程序 教程之wxapp 视图容器 view
Oct 19 #Javascript
jQuery插件ajaxFileUpload使用实例解析
Oct 19 #Javascript
使用Angular.js开发的注意事项
Oct 19 #Javascript
js表单登陆验证示例
Oct 19 #Javascript
You might like
PHP封装分页函数实现文本分页和数字分页
2014/10/23 PHP
php如何控制用户对图片的访问 PHP禁止图片盗链
2016/03/25 PHP
php array_merge_recursive 数组合并
2016/10/26 PHP
PHP将数据导出Excel表中的实例(投机型)
2017/07/31 PHP
Javascript 实用小技巧
2010/04/07 Javascript
获取select元素被选中的文本内容的js代码
2014/01/29 Javascript
jquery中的工具使用方法$.isFunction, $.isArray(), $.isWindow()
2015/08/09 Javascript
js实现仿爱微网两级导航菜单效果代码
2015/08/31 Javascript
微信小程序 教程之wxapp视图容器 swiper
2016/10/19 Javascript
详解使用vue-admin-template的优化历程
2018/05/20 Javascript
超出JavaScript安全整数限制的数字计算BigInt详解
2018/06/24 Javascript
js删除数组中某几项的方法总结
2019/01/16 Javascript
浅谈JavaScript闭包
2019/04/09 Javascript
python 字符串格式化代码
2013/03/17 Python
python安装mysql-python简明笔记(ubuntu环境)
2016/06/25 Python
Python WXPY实现微信监控报警功能的代码
2017/10/20 Python
python中 logging的使用详解
2017/10/25 Python
​如何愉快地迁移到 Python 3
2019/04/28 Python
python tkinter实现屏保程序
2019/07/30 Python
Python 3 判断2个字典相同
2019/08/06 Python
keras 获取某层输出 获取复用层的多次输出实例
2020/05/23 Python
python speech模块的使用方法
2020/09/09 Python
Java中有几种方法可以实现一个线程?用什么关键字修饰同步方法?stop()和suspend()方法为何不推荐使用?
2015/08/04 面试题
Java的基础面试题附答案
2016/01/10 面试题
社团招新策划书
2014/02/04 职场文书
火锅店营销方案
2014/02/26 职场文书
2014年单位植树节活动方案
2014/03/23 职场文书
正科级干部考察材料
2014/05/29 职场文书
保管员岗位职责
2015/02/14 职场文书
新年祝酒词大全
2015/08/11 职场文书
小学音乐课教学反思
2016/02/18 职场文书
​(迎国庆)作文之我爱我的祖国
2019/09/19 职场文书
pandas 操作 Excel操作总结
2021/03/31 Python
python画条形图的具体代码
2022/04/20 Python
Redis 异步机制
2022/05/15 Redis
解决ubuntu安装软件时,status-code=409报错的问题
2022/12/24 Servers