IE的事件流就叫做事件冒泡,是指事件开始从最确定的元素,逐层向上,传播到较不确定的节点,以下面的HTML页面为例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div class="div1" οnclick="alert(1);" >
<div class="div2">
<input type="button" value="click" οnclick="alert(2)"/>
</div>
</div>
</body>
</html>
点击按钮,首先弹出2,然后弹出1,那么事件的顺序是怎么样的呢?事件会按照如下的顺序:(1)input;(2)div;(3)body;(4)html(5)document;也就是说,click事件首先发生在input元素上,这个元素就是我们点击的元素,然后事件会沿着dom树向上传播,在每一级都会发生,所以会先弹出2,在弹出1.
另一种事件流就是事件捕获,事件捕获的思想是不太确定的节点尽早接收到事件,而最确定的节点最晚接收到事件,事件捕获的用意是在事件到达目标之前捕获他;