Rick's Studio.

关于dom冒泡

2018/03/20 Share

要了解关于dom冒泡,首先要了解一下什么是事件流,以及DOM事件的流的三个阶段。

简单来说流就是具有方向的数据

事件流

考虑一个问题:当你点击一个网页中按钮时,时按钮最外层的父元素先收到事件并执行还是,按钮先收到事件并执行。事件流所描述的就是从网页接受事件的顺序,因此事件流也有两种。分别是事件冒泡与事件捕获。

事件冒泡与事件捕获

事件冒泡是由最具体的元素接受(事件所发生的节点),然后逐级像上层父级元素传递。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>test</title>
    </head>
    <body>
        <button>Click Me</button>
    </body>
</html>

点击button,事件冒泡的触发顺序是button->body->document->window。而事件捕获的顺序则正好相反。

DOM事件流

DOM事件流包含三个阶段
1.事件捕获阶段
2.处于目标阶段
3.事件冒泡阶段

CATALOG
  1. 1. 事件流
  2. 2. 事件冒泡与事件捕获
  3. 3. DOM事件流