鼠标滚轮事件

//兼容性写法,该函数也是网上别人写的,不过找不到出处了,蛮好的,所有我也没有必要修改了
//判断鼠标滚轮滚动方向
if (window.addEventListener)//FF,火狐浏览器会识别该方法window.addEventListener('DOMMouseScroll', wheel, false);
window.onmousewheel = document.onmousewheel = wheel;//W3C
//统一处理滚轮滚动事件
function wheel(event){var delta = 0;if (!event) event = window.event;if (event.wheelDelta) {//IE、chrome浏览器使用的是wheelDelta,并且值为“正负120”delta = event.wheelDelta/120; if (window.opera) delta = -delta;//因为IE、chrome等向下滚动是负值,FF是正值,为了处理一致性,在此取反处理} else if (event.detail) {//FF浏览器使用的是detail,其值为“正负3”delta = -event.detail/3;
    }if (delta)handle(delta);
}
//上下滚动时的具体处理函数
function handle(delta) {if (delta <0){//向下滚动
            }else{//向上滚动
            }}

 IE、chrome监听的是wheelDelta,向下滚动其值为-120;向上滚动其值为120

 FF监听的是detail,向下滚动其值为3;向上滚动其值为-3

jQuery写法

$(document).on('mousewheel DOMMouseScroll', onMouseScroll);
function onMouseScroll(e){e.preventDefault();var wheel = e.originalEvent.wheelDelta || -e.originalEvent.detail;var delta = Math.max(-1, Math.min(1, wheel) );if(delta<0){//向下滚动console.log('向下滚动');}else{//向上滚动console.log('向上滚动');}
}

其他浏览器未测试

同类文章

http://www.jb51.net/article/24831.htm

http://www.cnblogs.com/walkingp/archive/2010/02/03/1662872.html

转载于:https://www.cnblogs.com/caoruiy/p/4694498.html

JS鼠标滚轮事件详解相关推荐

  1. js中鼠标滚轮事件详解

    <body style="height:2000px"><script type="text/javascript">var scrol ...

  2. JS鼠标滚轮事件mousewheel实现翻页(记录)

    JS鼠标滚轮事件mousewheel实现翻页(PPT?) 整体思路(趁还能看懂自己的代码) 1.我想模拟那些不用滚动条,像PPT一样滚动的页面,于是乎想到了mousewheel事件 2.我又想再页面右 ...

  3. html js鼠标滚轮事件,JS事件-鼠标滚轮事件

    之前学习了onmouseover,onmousedown等鼠标事件,今天来看看鼠标的滚轮事件,浏览器兼容一直是让人比较恶心的事情,今天就让我们将恶心进行到底,看看这个恶心的鼠标滚轮事件! 鼠标滚轮事件 ...

  4. [js点滴]JavaScript事件详解

    Event对象 目录 事件是一种异步编程的实现方式,本质上是程序各个组成部分之间的通信.DOM支持大量的事件,本节介绍DOM的事件编程. EventTarget接口 DOM的事件操作(监听和触发),都 ...

  5. java响应鼠标滚轮事件_鼠标滚轮事件MouseWheel

    其实在大多数浏览器(IE6, IE7, IE8, Opera 10+, Safari 5+,Chrome)中,都提供了 "mousewheel" 事件.但杯具的是 Firefox ...

  6. 鼠标滚轮事件及解决滚轮事件多次触发问题

    转载:https://www.cnblogs.com/jjxhp/p/11736066.html#_label0 一.滚轮事件的 js 写法 二.jQuery写法 三.参考 四.滚轮事件滚动过快,事件 ...

  7. html如何设置滑轮效果,HTML中鼠标滚轮事件onmousewheel处理

    滚轮事件是不同浏览器会有一点点区别,一个像Firefox使用DOMMouseScroll ,ff也可以使用addEventListener方法绑定DomMouseScroll事件,其他的浏览器滚轮事件 ...

  8. Js事件模型、事件详解

    六.Js中的事件详解 A  事件流(event  flow ) 事件模型分为两种:冒泡型事件.捕获型事件. 冒泡型(dubbed  bubbling )事件:指事件按照从最精确的对象到最不精确的对象的 ...

  9. java鼠标js触发事件吗,JavaScript鼠标事件是什么?JavaScript鼠标事件详解

    js中是比较简单的语言,然而js的精髓就是js事件,这也是js当中最重要的部分,很多人对JavaScript鼠标事件是什么还不是很了解,下面我们对JavaScript鼠标事件进行详解. 一:在js中, ...

最新文章

  1. 数据结构与算法--线性表(顺序表)
  2. 当团队预算不足、人手不够时,该如何做好一款游戏?
  3. centos一键安装redmine
  4. Tomcat启动报Error listenerStart错误
  5. sql2005关闭c2审核_C2审核–使用C2审核模式SQL Server审核和通用标准合规性
  6. 电视盒子 android tv6,【亲测】S905L/S905L-B安卓TV6.0通刷固件
  7. java调用用友eai_U811.1接口EAI系列之二--生成销售出库单调用U8的EAI通用处理方法--PowerBuilder语言...
  8. scala入门学习之类的使用
  9. 汇总3种获取水系数据的途径
  10. mac上chrome插件安装
  11. DBA职业规划技术成长路线
  12. 惯性测量单元预积分原理与实现
  13. 云业务贡献40.5%增长:亚马逊2022年财报亮点解读
  14. 用计算机打出刚好遇见你,【计算机·故事】刚好遇见你 余生都是你
  15. 读懂python中的self
  16. Leetcode sixth day
  17. tesseract4.1遇到奇怪的0xc000001d应用程序无法运行
  18. taLend入门_简单使用
  19. 杭电acm 2021
  20. MATLAB基于视频的人体姿态检测

热门文章

  1. 【Linux网络编程】并发服务器之多进程模型
  2. 【C++】 C++标准模板库(九) Bitsets
  3. 北邮计算机学院崔哲域,邂逅北邮 是最美的期待—北京邮电大学2019级本科生开学典礼采访纪实...
  4. pro android学习笔记,Pro Android学习笔记(六八):HTTP服务(2):HTTP POST-Go语言中文社区...
  5. 描述java源程序构成_2.1 Java程序的构成
  6. python实现二分查找算法_python实现二分查找算法
  7. 51nod 1448 二染色问题 (逆向考虑)
  8. html代码测试1006无标题,无标题Html5页面测试点总结文章
  9. 1005 继续(3n+1)猜想 (25 分)(c语言实现)
  10. 牛客练习赛34 E little w and Digital Root(数位dp)