js中跨浏览器的一些事件和 兼容处理

以下是针对标准浏览器和IE一些低版本浏览器的一部分事件处理,所有处理方法均保存为一个函数存放在一个对象字面量中。用时调用即可。

var EventUtil = {
// 给对象绑定事件
addHandle: function(element,type,fn) {
if(element.addEventListener) {
element.addEventListener(type,fn);
}else if(element.attachEvent) {
element.attachEvent("on"+type,fn);
}else {
element["on"+type] = fn;
}
},
// 给对象消除事件
removeHandle: function(element,type,fn) {
if(element.removeEventListener) {
element.removeEventListener(type,fn);
}else if(element.detachEvent) {
element.detachEvent("on"+type,fn);
}else {
element["on"+type] = null;
}
},
// 获取event事件对象
getEvent: function(e) {
return e||window.e;
},
// 获取事件目标对象
getTarget: function(e) {
return e.target||e.srcElement;
},
// 阻止默认事件
preventDefault: function(e) {
if(e.preventDefault) {
e.preventDefault();
}else {
e.returnValue = false;
}
},
// 阻止冒泡
stopPropagation: function(e) {
if(e.stopPropagation) {
e.stopPropagation();
}else {
e.cancelBubble = true;
}

},

};

猜你喜欢

转载自blog.csdn.net/qq_36060786/article/details/79431806