addEventListener

addEventListener 的第三個參數

http://www.runoob.com/jsref/met-element-addeventlistener.html

element.addEventListener(event, function, useCapture)

useCapture:可选。布尔值,指定事件是否在捕获或冒泡阶段执行。

  • true - capture:事件在捕获阶段执行,是由外而內觸發。
  • false - bubbling:默认。事件句柄在冒泡阶段执行,從內而外觸發。

e.g.

https://blog.othree.net/log/2007/02/06/third-argument-of-addeventlistener/ 兩層 div 元素,而且都設定有 click 事件。

.red>.blue

點擊 .blue,會觸發 .blue 的 click 事件、也會同時觸發 .red 的 click 事件, useCapture 這個參數就是在控制這時候兩個 click 事件的先後順序

  • 如果是 false,那就是 bubbling,他是從內而外的流程:
    • 所以會先執行 .blue 的 click 事件、再執行 .red 的 click 事件。
  • 如果是 true,那就是 capture;和 bubbling 相反,是由外而內:
    • 會先執行 .red 的 click 事件、才執行 .blue 的 click 事件。

results for ""

    No results matching ""