【发布时间】:2011-03-18 23:44:33
【问题描述】:
事件冒泡和事件捕获有什么用?
【问题讨论】:
事件冒泡和事件捕获有什么用?
【问题讨论】:
如果您单击一个元素,例如页面上结构如下的链接:
- BODY
- DIV
- A
那么不仅 A 得到 onclick 事件,而且它下面的所有元素也得到了。第一轮是从下到上的捕获阶段,每个元素都获得onclick事件并具有破坏事件的能力。当捕获结束时,就会发生目标阶段 - 这是被点击的最顶层元素。然后冒泡发生,这与捕获几乎相同,但这次它从上到下倒退。因此,在下面的示例中,点击后发生的不是 1 个 onclick 事件,而是实际发生了 5 个(2 x 捕获、1 x 定位、2 x 冒泡)。
捕获阶段
v ---BODY--- :onclick, break event?
v --DIV-- :onclick, break event?
定位阶段
v -A- :onclick, break event?
冒泡阶段
v --DIV-- :onclick, break event?
v ---BODY--- :onclick, break event?
【讨论】: