您的位置:首页 > Web前端 > JavaScript

JavaScript跨浏览器处理事件方法(封装成对象)

2016-01-30 23:07 721 查看
// JavaScript Document
//跨浏览器的事件处理
var EventUtil = {

addHandler: function(element ,type ,handler){    //增加事件监听
if(element.addEventListener){                //DOM2
element.addEventListener(type ,handler ,flase) ;
}else if(element.attachEvent){
element.attachEvent("on" + type ,handler) ;	//DOM2IE
}else{
element["on" + type] = handler ;	       //DOM0
}
},
removeHandler: function(element ,type ,handler){    //删除事件监听
if(element.removeEventListener){
element.removeEventListener(type ,handler ,flase) ; //DOM2
}else if(element.detachEvent){
element.detachEvent("on" + type ,handler) ;       //DOM2IE
}else{
element["on" + type] = null ;	                //DOM0
}
},
getEvent: function(event){                      //获得事件
return event?event:window.event ;
},
getTarget: function(event){                     //获得目标
return event.target||event.srcElement ;
},
preventDefault: function(event){                 //阻止事件默认行为
if(event.preventDefault){
event.preventDefault() ;
}else{
event.returnValue = false ;
}
},
stopPropagation: function(event){               //停止事件冒泡
if(event.stopPropagation){
event.stopPropagation ;
}else {
event.cancelBubble =  true ;
}
},
getCharCode: function(event){
if(typeof event.charCode == "number"){
return event.charCode ;
}else{
return event.keyCode ;
}
},
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: