事件流:描述页面接收事件的顺序。
事件冒泡;事件开始时由最具体的元素(文档中嵌套层次最深的那个节点)接收,然后逐级向上传播到较为不具体的节点(文档)。事件捕获:事件从不太具体的节点开始触发,然后逐级向下传播到到最具体的元素。DOM0事件流:在冒泡阶段被处理。DOM2事件流:包括三个阶段,按照发生顺序的角度来说分别是事件捕获阶段、处于目标阶段和事件冒泡阶段。添加事件的方法是addEventListener(event,fn,useCapture);userCapture是布尔值,true为在捕获阶段执行事件,false为在冒泡阶段执行事件。例一:DOM2
IE事件处理程序:IE不支持DOM2事件流,以自己独特的方法:attachEvent()来实现事件处理。并且只在冒泡阶段被执行。
例二:DOM2
注意:为同一个元素添加两个不同的时间处理程序,IE和DOM的方法不同,IE以添加顺序的相反顺序来执行,而DOM是按照添加顺序来执行的。
声明:IE9开始已经逐步支持DOM2事件流,所以,上述IE全部是指IE9之前的浏览器。