js函数中访问事件的问题

function stopBubble(e) {  
    var e = e ? e : window.event;  
    if (window.event) { // IE  
        e.cancelBubble = true;   
    } else {   
        e.stopPropagation();   
    }   
}  

上面这个时间阻止函数,调用时是这么写的

<input id="buttonId" type="button" onclick="stopBubble(event)" />  

请问如果我想以addEventListener绑定事件的方式该怎么写?如何获取这个事件?

第二个问题,为什么通过window.event可以判断是IE浏览器?

阅读 3.9k
1 个回答

就是这样:

var elem = document.getElementById("buttonId");
elem.addEventListener("click", stopBubble, false);

其中第三个参数指明是否要优先捕获来自子DOM对象的事件。默认为false。

window.event是IE浏览器特有的事件对象,所以可以据此判断是否是IE浏览器。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题