addEvenListener和正常onclick的区别

传统事件绑定和符合W3C标准的事件绑定有什么区别?
onclick
1.同一元素绑定了两次或多次相同类型事件,后面的绑定会覆盖前面的绑定。
2.不支持DOM事件流。

addEvenlistener
1.同一元素绑定了两次或多次相同类型事件,所有的绑定会依次触发。
2.支持DOM事件流
3.进行事件绑定传参不需要on前缀
addEvenListener(“click”,function(){},true)//第三个参数为false,则是在冒泡阶段执行。

ie9以前:attachEvent/detachEvent
1.进行事件类型传参需要带上on前缀。
2.这种方式只支持事件冒泡,不支持事件捕获。

事件: 事件是用户自身或浏览器进行的特定行为。如:用户点击 click事件
事件流:多个事件 按一定顺序触发 形成了事件流
事件名称:如上面所讲的click就是事件名
事件处理函数/事件监听函数(Dom的叫法)就是 事件触发后的处理函数,如obj.fn;函数fn就是事件处理函数
事件流描述的是从页面中接收事件的顺序,IE采用事件冒泡流,标准采用事件捕获流,最后addEventLister给出了第三个参数同时支持冒泡与捕获。

事件冒泡会从当前触发的事件目标一级一级往上传递,依次触发,直到document为止。
事件捕获会从document开始触发,一级一级往下传递,依次触发,直到真正事件目标为止。

猜你喜欢

转载自blog.csdn.net/weixin_41989325/article/details/89289059