Go
Go
文章目录
  1. 事件流
    1. 标准事件流
    2. IE事件流
    3. 事件顺序
    4. 阻止事件传播

JS 事件机制

事件流

所谓的标准事件流指的的:
EMCAScript标准规定事件流包含三个阶段,
分别为事件捕获阶段处于目标阶段事件冒泡阶段

标准事件流

1
2
3
1. doc
2. parent
3. child =>click

在标准事件流中事件触发分为三个阶段
捕获阶段 1, 2, 3处于目标阶段 紧接着冒泡2, 1

IE事件流

虽然大部分的浏览器都遵循着标准,但是在IE浏览器中,事件流却是非标准的。IE中事件流只有两个阶段: 处于目标阶段,冒泡阶段。

事件顺序

某些事件有默认行为,比如点击超链接会跳转。

一般的事件执行顺序:

事件捕获 => 处于目标 => 事件冒泡 => 默认行为
阻止默认行为发生

1
2
3
4
5
6
7
8
标准浏览器:
callback(event){
event.preventDetault();
}
IE:
callback(event){
event.returnValue = false;
}

阻止事件传播

1
2
3
callback(event){
event.stopPropagation();
}
支持一下
扫一扫