- 首先我們需要知道所謂的事件冒泡與事件捕獲是怎么來的
微軟提出了名為
事件冒泡(event bubbling)
的事件流。事件會從最內(nèi)層的元素開始發(fā)生洛史,一直向上傳播央勒,直到document對象。
網(wǎng)景提出另一種事件流名為
事件捕獲(event capturing)
。與事件冒泡相反喻圃,事件捕獲會從最外層開始發(fā)生,直到最具體的元素粪滤。
任由兩家大公司打來打去是不好的斧拍,所以W3C制定了標準,先捕獲在冒泡
element.addEventListener(event, function, useCapture)
addEventListener
有三個參數(shù)
1 綁定的事件
2 執(zhí)行的函數(shù)
3 以冒泡還是捕獲去處理事件杖小,默認值為false
饮焦,也就是事件冒泡,如果值為True
窍侧,代表以事件捕獲去執(zhí)行下面我們分別看一下冒泡與捕獲的例子
事件冒泡的執(zhí)行方式[從最內(nèi)層一直向外傳播]
事件冒泡
事件捕獲的執(zhí)行方式[從最外層向內(nèi)傳播]
事件捕獲
- 當然县踢,你也可以去阻止冒泡
e.stopPropagation()