核心提示:DOM事件处理跨浏览器(兼容IE)封装var eventUtil={ /*DOM2级事件处理程序*/ //给一个元素添加事件 addHander:function(element,type...
DOM事件处理跨浏览器(兼容IE)封装
var eventUtil={ /*DOM2级事件处理程序*/ //给一个元素添加事件 addHander:function(element,type,hander){ if(element.addEventListener){ element.addEventListener(type,hander,false); /*非IE*/ }else if(element.attachEvent){ element.attachEvent("on"+type,hander); /*IE*/ }else{ element["on"+type]=hander; } }, //给一个元素删除事件 removeHander:function(element,type,hander){ if(element.removeEventListener){ element.removeEventListener(type,hander,false); /*非IE*/ }else if(element.detachEvent){ element.detachEvent("on"+type,hander); /*IE*/ }else{ element["on"+type]=null; } }, //获取兼容所有浏览器的一个对象 getEvent:function(event){ return event?event:window.event; }, //获取事件类型 getType:function(event){ //此项不存在浏览器兼容问题 return event.type; }, //事件来自哪个元素 getElement:function(event){ return event.target || event.srcElement; }, //阻止事件默认行为 preventDefault:function(event){ if(event.preventDefault){ event.preventDefault(); /*非IE*/ }else{ event.returnValue=false; /*IE*/ } }, //阻止事件冒泡 stopPropagation:function(event){ if(event.stopPropagation){ event.stopPropagation(); /*非IE*/ }else{ event.cancelBubble=true; /*IE*/ } } }