js跨浏览器事件处理
生活随笔
收集整理的這篇文章主要介紹了
js跨浏览器事件处理
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
var EventUtil = {addHandler: function(element,type,handler){if(element.addEventListener){element.addEventListener(type,handler,false); //添加DOM2事件}else if(element.attachEvent){element.attachEvent("on"+type,handler); //添加IE事件}else{element["on"+type] = handler; //添加DOM0事件
}},removeHandler: function(element,type,handler){if(element.removeEventListener){element.removeEventListener(type,handler,false);}else if(element.detachEvent){element.detachEvent("on"+type,handler);}else{element["on"+type] = null;}},getEvent : function(event){return event ? event : window.event; //在使用DOM0級(jí)事件中中event作為window對(duì)象的一個(gè)屬性存在
},getTarget : function(event){return event.target || event.srcElement; //IE中取得event.srcElement
},preventDefault : function(event){if(event.preventDefault){event.preventDefault();}else{event.returnValue = false; //IE中阻止默認(rèn)事件
}},stopPropagation : function(event){if(event.stopPropagation){event.stopPropagation();}else{event.cancelBubble = true; //IE取消事件冒泡
}}
}
?
addHandler()視情況分別為DOM0級(jí)方法、DOM2級(jí)方法或IE方法來(lái)添加事件。
removHandler()則是移除事件。
注:DOM0級(jí)對(duì)每個(gè)事件只支持一個(gè)事件處理程序。
?
EventUtil的使用例子,如下
window.onload = function(){var btn = document.getElementById("btn");EventUtil.addHandler(btn,"click",demo);//EventUtil.removeHandler(btn,"click",demo)function demo(){alert("ckicked !");} }?
轉(zhuǎn)載于:https://www.cnblogs.com/scnuwangjie/p/4918321.html
總結(jié)
以上是生活随笔為你收集整理的js跨浏览器事件处理的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 2015生命之旅---第一站重庆
- 下一篇: OEM status|start|sto