本文的示例是为了分析JS滚轮事件的
兼容性问题,供
参考,具体内容如下
标题
{ # div
宽度:300px;
身高:300px;
背景:红色;
}
函数AddEvent(obj,SEV,FN){
如果(obj。addEventListener){
返回obj.addeventlistener(SEV,FN,假);
其他{ }
返回obj.attachevent(开+ SEV,FN);
}
}
功能addwheel(obj,FN){
功能轮(EV){
无功oevent = EV事件| |;
无功bdown =真;
bdown = oevent.wheeldeltaoevent.wheeldelta > 0:oevent.detail<0;
FN FN(bdown);
OEvent.preventDefault oEvent.preventDefault();
返回false;
}
------------------------------------------------------------------
返回false防止
浏览器
默认行为,并在绑定到添加事件时失败。
所有需要使用oevent.preventdefault();在使用本法进行判断;
------------------------------------------------------------------
If (window.navigator.userAgent.indexOf ('Firefox')! = 1){
Obj.addEventListener('dommousescroll轮,false);注:所有DOM只能在事件绑定的形式加入到这项活动;
其他{ }
AddEvent(obj,'mousewheel,轮);
}
}
-------------------------------------------------------------------------------------------------
Obj.onmousewheel:滚动
鼠标滚轮时触发;用IE系列和浏览器兼容;
dommousescroll:只能在事件绑定窗体添加此事件;只有兼容FF;
兼容性问
题解决方案:判断浏览器;
OEvent.wheelDelta:兼容FF;未定义的报道在Firefox。
ChromeIE:
- 120;到特定的弹出式数字是
升:120;
OEvent.detail:
FF:
:3;到特定的弹出式数字是
---------------------------------------------------------------------------------------------------
在window.onload =函数(){
无功odiv = document.getelementbyid('div);
AddWheel(odiv,功能(bdown){
odiv.onmousewheel = null;
如果(bdown){
odiv.style.height = odiv.offsetheight - 10 + 'px;
其他{ }
odiv.style.height = odiv.offsetheight + 10 + 'px;
}
});
}
滚轮事件有很多兼容性问题,所以当您意识到这个效果时,您也应该在任何时候测试兼容性问题。
目前,有许多不足之处。
以上是本文的全部内容,希望能对您有所帮助,希望大家多多
支持。