$(document).on("click","#a",function(){alert(1)}) [#document] as a replacement of previous delegate etc..
event capture
netscape 和 微軟 曾經的戰爭還是比較火熱的,當時, netscape 主張捕獲方式,微軟主張冒泡方式。后來 w3c 采用折中的方式,平息了戰火,制定了統一的標准——先捕獲再冒泡。
事件的觸發有三個階段
- document 往事件觸發地點,捕獲前進,遇到相同注冊事件立即觸發執行
- 到達事件位置,觸發事件(如果該處既注冊了冒泡事件,也注冊了捕獲事件,按照注冊順序執行)
- 事件觸發地點往 document 方向,冒泡前進,遇到相同注冊事件立即觸發
這么說很多人比較迷糊,我們在注冊事件的時候,通常使用的是 捕獲 或者 冒泡 的 一種:
obj.addEventListener("click", func, true); // 捕獲方式 obj.addEventListener("click", func, false); // 冒泡方式