当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javascript 兼容鼠标滚轮事件

Javascript
AJAX教程(14):通过XMLHTTP加载XML文件
AJAX教程(15):通过XMLHTTP进行一次HEAD请求
AJAX教程(16):通过XMLHTTP进行一次指定的HEAD请求
AJAX教程(17):把XML文件显示为HTML表格
JS通过WMI获取客户端硬件信息
JavaScript中使用远程脚本
关于Ajax技术的注意事项
XMLHttpRequest创建智能表单
iframe创建智能表单
JS教程:线小测试程序
在Web页面中使用计时器
将事件处理器作为HTML标记的属性
事件处理器作为浏览器对象的属性
Math对象应用详解
random()方法和pow()方法
charAt()方法和charCodeAt()方法
Number对象常用的toFixed()方法
JS教程:为什么尽量用局部变量代替全局变量
解决JavaScript循环中的过多操作
处理提示“脚本运行时间过长的提示框”问题

Javascript 中的 javascript 兼容鼠标滚轮事件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 493 ::
收藏到网摘: n/a

浏览地图时,使用鼠标滚轮来放大和缩小。即用到了滚轮事件。 这个事件在标准下和IE下是有区别的。firefox是按标准实现的,事件名为"DOMMouseScroll ",IE下采用的则是"mousewheel "。
当然一行代码就解决了兼容问题
复制代码 代码如下:

var mousewheel = document.all?"mousewheel":"DOMMouseScroll";

事件属性,IE是event.wheelDelta,Firefox是event.detail 属性的方向值也不一样,IE向上滚 > 0,Firefox向下滚 > 0。
最新的jquery1.3.2仍然没有增加滚轮事件,但可以用jquery的bind去绑定任何事件,当然得加上上面那句。
不过jquery有个插件已经加上了该功能。见http://brandonaaron.net/code/mousewheel/demos
这样使用:
复制代码 代码如下:

$('div.mousewheel_example').mousewheel(fn);
$('div.mousewheel_example').bind('mousewheel', fn);