addEventListener 和 on 区别?

收藏
Javascript基础语法
7
Feb 8, 2018

HTML代码:

<div id="box">addEventListener 和 on 区别</div>

js第一种写法:

js代码:
window.onload = function(){
     var box = document.getElementById("box");
     box.onclick = function(){
         console.log("我是box1");
     }
     box.onclick = function(){
         console.log("我是box2");
     }
}

//运行结果:“我是box2”

js第二种写法:

js代码:
 window.onload = function(){
     var box = document.getElementById("box");
     box.addEventListener("click", function(){
         console.log("我是box1");
     })
     box.addEventListener("click", function(){
         console.log("我是box2");
     })
}
运行结果:我是box1
     我是box2

在使用上面不同的js代码给元素对象添加事件时,第一种写法的点击输出的结果一直,第二种写法输出的结果不一致,为什么呢?

回答

云松回答

问题分析:

    onclick在绑定事件到同一个元素对象时,第二个绑定事件会覆盖第一绑定的事件。而使用addEventListener可以多次绑定同一个事件并且不会覆盖上一个事件。

这是在绑定同一个元素对象事件时,onclick和addEventListener的区别。

 

(0)

提交成功