在《JS权威指南》中有写到:
事件冒泡是事件传播的第三阶段,调用目标本身对象的事件处理程序是第二个阶段,第一阶段,也就是目标处理处理程序被调用之前的阶段,叫做捕获阶段
还记得addEventListener接收的第三个可选参数吧,如果这个参数是true或{capture: true},那么就表明该事件处理程序会注册为捕获事件处理程序,将在事件传播的第一阶段被调用。
注册在事件目标本身的捕获事件处理程序不会在这个阶段被被调用
这里前面说捕获程序会在第一阶段(即捕获阶段)被调用,但后面又说不会在这个阶段被调用,这不是矛盾的吗?
注册在事件目标本身的捕获事件处理程序不会在这个阶段被被调用
是指addEventListener接收的第三个可选参数默认是false,即不在这个阶段调用函数,如果需要在这个阶段触发,需要设置为true