使用js對鼠標滾輪事件進行控制,滾輪事件其中考慮瀏覽器兼容性問題
其中火狐瀏覽器事件為:"DOMMousescroll";其余瀏覽器是:"onmousewheel"
onmousewheel事件在火狐瀏覽器中為:"null";
滾輪事件綁定:
//事件綁定
function addEvent(obj,sEv,fn){
if(obj.addEventListener){
// addEventListener(高級瀏覽器)
obj.addEventListener(sEv,fn,false);
}else{
// attachEvent(iE8-使用)
obj.attachEvent('on'+sEv,fn);
}
}
//阻止默認行為
function preventDefault(ev){
var oEvent = ev || event;
if(ev.preventDefault){
ev.preventDefault();
}else{
ev.returnValue = false;
}
//滾輪事件
function addWheel(obj,fn){
if(obj.onmousewheel === null){
addEvent(obj,'DOMMouseScroll',wheel);
}else{
addEvent(obj,'mousewheel',wheel);
}
function wheel(ev){
var oEvent = ev || event;
var bDown = oEvent.wheelDelta ? oEvent.wheelDelta<0 : oEvent.detail>0;fn && fn(bDown);
preventDefault(ev);
}
}