由于IE浏览器和其他浏览器有差别的处置惩罚事宜的函数,所以须要拿出一个跨浏览器的解决方案。
<script>
// 跨浏览器事宜对象
//缘由:DOM和IE中的event对象差别,但是有一些相似性。所以能够拿出一个跨浏览器的解决方案
var EventUtil = {
addHander:function(element,type,handler){
if(element.addEventListener){
//DOM处置惩罚增加监听事宜
element.addEventListener(type, handler, false);
}else if(element.attachEvent){
//IE处置惩罚增加监听事宜
element.attachEvent("on" + type, handler);
}else{
element["on" + type] = handler;
}
},
removeHander:function(element, type, handler){
if (element.removeHander) {
element.removeHander(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;
},
getTarget:function(event) {
return event.target || event.srcElement;
}
}
</script>