事件捕获:
给元素绑定事件,普通写法是obj.onclick=function(){} 这就相当于给obj的onclick属性赋值是一个道理。
obj.onclick=function(){}这种写法有个缺点,后者会将前者覆盖。
事件绑定的第二种方法:
标准浏览器用addEventListener()这个方法,
ie低版本用attachEvent()这个方法
addEventListener()
括号里三个参数1、事件名 事件名不能带on
2、事件函数
3、布尔值 代表捕获不捕获 默认是false 不捕获但是冒泡 true 捕获但是不冒泡
事件捕获
1、ie低版本没有捕获
2、普通事件绑定方法没有捕获
事件捕获:给父子元素用addEventListener()绑定同一个事件时,当触发子元素身上的时间,会先触发父元素,然后在传递给子元素,这种传播机制叫事件捕获。
attachEvent()和addEventListener()二者区别:
1、attachEvent只用在ie8以下 addEventListener()适合标准浏览器
2、attachEvent的事件名带on addEventListener事件名不带on
3、attachEvent函数里面的this是window addEventListener函数里面的this是当前元素对象。
4、attachEvent只有冒泡没有捕获 addEventListener有冒泡也有捕获
所有事件都是异步的。