最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

js中鼠标滚轮事件详解(firefox多浏览器)_javascript技巧

来源:动视网 责编:小采 时间:2020-11-27 20:47:04
文档

js中鼠标滚轮事件详解(firefox多浏览器)_javascript技巧

js中鼠标滚轮事件详解(firefox多浏览器)_javascript技巧:附加事件 其中经我测试,IE/Opera属于同一类型,使用attachEvent即可添加滚轮事件。 代码如下: /*IE注册事件*/ if(document.attachEvent){ document.attachEvent('onmousewheel',scrollFunc); } Firefox使用addEve
推荐度:
导读js中鼠标滚轮事件详解(firefox多浏览器)_javascript技巧:附加事件 其中经我测试,IE/Opera属于同一类型,使用attachEvent即可添加滚轮事件。 代码如下: /*IE注册事件*/ if(document.attachEvent){ document.attachEvent('onmousewheel',scrollFunc); } Firefox使用addEve


附加事件

其中经我测试,IE/Opera属于同一类型,使用attachEvent即可添加滚轮事件。
代码如下:
/*IE注册事件*/
if(document.attachEvent){
document.attachEvent('onmousewheel',scrollFunc);
}

Firefox使用addEventListener添加滚轮事件
代码如下:
/*Firefox注册事件*/
if(document.addEventListener){
document.addEventListener('DOMMouseScroll',scrollFunc,false);
}

Safari与Chrome属于同一类型,可使用HTML DOM方式添加事件
window.onmousewheel=document.onmousewheel=scrollFunc;//IE/Opera/Chrome
其中除Firefox外其余均可使用HTML DOM方式添加事件,因此添加事件使用以下方式
代码如下:
/*注册事件*/
if(document.addEventListener){
document.addEventListener('DOMMouseScroll',scrollFunc,false);
}//W3C
window.onmousewheel=document.onmousewheel=scrollFunc;//IE/Opera/Chrome

detail与wheelDelta

判断滚轮向上或向下在浏览器中也要考虑兼容性,现在五大浏览器(IE、Opera、Safari、Firefox、Chrome)中Firefox 使用detail,其余四类使用wheelDelta;两者只在取值上不一致,代表含义一致,detail与wheelDelta只各取两个 值,detail只取±3,wheelDelta只取±120,其中正数表示为向上,负数表示向下。
代码如下:

(IE/Opera)




var oTxt=document.getElementById("txt");
/***********************
* 函数:判断滚轮滚动方向
* 作者:walkingp
* 参数:event
* 返回:滚轮方向 1:向上 -1:向下
*************************/
var scrollFunc=function(e){
var direct=0;
e=e || window.event;

var t1=document.getElementById("wheelDelta");
var t2=document.getElementById("detail");
if(e.wheelDelta){//IE/Opera/Chrome
t1.value=e.wheelDelta;
}else if(e.detail){//Firefox
t2.value=e.detail;
}
ScrollText(direct);
}
/*注册事件*/
if(document.addEventListener){
document.addEventListener('DOMMouseScroll',scrollFunc,false);
}//W3C
window.onmousewheel=document.onmousewheel=scrollFunc;//IE/Opera/Chrome/Safari


[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

Chrome

Firefox

IE(8)

IE(6)

Opera

Safari

文档

js中鼠标滚轮事件详解(firefox多浏览器)_javascript技巧

js中鼠标滚轮事件详解(firefox多浏览器)_javascript技巧:附加事件 其中经我测试,IE/Opera属于同一类型,使用attachEvent即可添加滚轮事件。 代码如下: /*IE注册事件*/ if(document.attachEvent){ document.attachEvent('onmousewheel',scrollFunc); } Firefox使用addEve
推荐度:
标签: 浏览器 js firefox
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top