简单一句话概括事件流:事件的传播过程就是DOM的事件流。
举一个例子:给ul中的li添加点击事件。
事件传播的整个过程:
首先document检测是否有点击事件,没有;下一步找html,没有点击事件;然后找body,没有点击事件;接着找ul,没有点击事件;最后找到li,有点击事件,进行事件处理程序。
完成后,按着li-->ul--->body--->html--->document的顺序传播回去。
这就是DOM事件流。
事件流分为三个阶段
1.捕获阶段 从顶层节点开始,找注册事件的目标元素
html—— 当前目标阶段(例子中的li)
2.当前目标阶段 li
3.冒泡阶段 从目标元素往顶层节点找
当前目标阶段(例子中的li)—— html
有些事件是没有冒泡阶段的:onfocus、onblur、onmouseenter、onmouseleave
其实还有一些知识点没放上了,等明天我把案例做了再一起放吧.