在园里看到一道面试题,
<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
其实仔细想一想,最后的答案也应该是这样子,因为addEventListener是为某一事件附加其它的处理事件,所以应该 是执行的是click的事件,然后才执行addEventListener附加的事件。