本文提供了在 Internet Explorer 与 Firefox 浏览器中实现跨兼容的事件处理方案。主要包含两个核心函数:一是通过判断 addEventListener 与 attachEvent 方法的存在性来统一添加事件监听器;二是通过 window.event 及 srcElement/target 属性获取事件触发源元素,确保在不同浏览器环境下代码逻辑的一致性。
统一添加事件监听器
注册事件监听器:
实现代码如下:
//例如调用addListener(document,"click",function(){alert('阿会楠')})
function addListener(element,e,fn){
if(element.addEventListener){
element.addEventListener(e,fn,false);
} else {
element.attachEvent("on" + e,fn);
}
} 获取事件触发源元素
提取触发源元素:
实现代码如下:
function(evt){
var evt = window.event?window.event:evt,target=evt.srcElement||evt.target;}