一道JS addEventListener面试题

在园里看到一道面试题,
<div id="test">Click Here</div>
var node=document.getElementById('test');
node.onclick=function(){
  console.log('1');
}
node.addEventListener('click',function(){
console.log('2');
},false);
node.onclick=function(){
console.log('3');
}
node.addEventListener('click',function(){
console.log('4');
},false);
作者给出的答案是2,3,4
从这道题的出意,答题可以看出主要想考察的是onlick的覆盖,以及addEventListener的使用方法。
但是对于作者给出的答案存在疑问,于是就测试了一下(注意addEventListener只适用于firefox浏览器,其他浏览器使用attachEvent)

测试的结果是3,2,4

一道JS addEventListener面试题

其实仔细想一想,最后的答案也应该是这样子,因为addEventListener是为某一事件附加其它的处理事件,所以应该  是执行的是click的事件,然后才执行addEventListener附加的事件。

上一篇:SQL DEVELOPER工具找不到database时的解决


下一篇:jQuery -- 光阴似箭(三):jQuery 操作 HTML 元素和属性