绑/解事件
绑定事件的区别
addEventListener();
attachEvent()
相同点: 都可以为元素绑定事件
不同点: 1.方法名不一样 2.参数个数不一样 addEventListener 三个参数,attachEvent 两个参数
3.addEventListener 谷歌,火狐,IE11 支持,IE8 不支持
attachEvent 谷歌火狐不支持,IE11 不支持,IE8 支持
4.this 不同,addEventListener 中的 this 是当前绑定事件的对象
attachEvent 中的 this 是 window
5.addEventListener 中事件的类型(事件的名字)没有 on
attachEvent 中的事件的类型(事件的名字)有 on
解绑事件注意
注意:用什么方式绑定事件,就应该用对应的方式解绑事件 1.解绑事件
对象.on 事件名字=事件处理函数—>绑定事件
对象.on 事件名字=null; 2.解绑事件
对象.addEventListener(“没有 on 的事件类型”,命名函数,false);—绑定事件
对象.removeEventListener(“没有 on 的事件类型”,函数名字,false); 3.解绑事件
对象.attachEvent(“on 事件类型”,命名函数);—绑定事件
对象.detachEvent(“on 事件类型”,函数名字);
绑定事件
1 | btn.addEventListener("click",function () { |
解绑事件
1 | let btn = document.querySelectorAll("input"); |
绑/解兼容写法
1 | // 获取按钮 |
阻止事件冒泡
1 | //事件冒泡:多个元素嵌套,有层次关系,这些元素都注册了相同的事件,如果里面的元素的事件触发了,外面的元素的该事件自动的触发了. |