事件冒泡是一種事件傳播機(jī)制,它描述了當(dāng)一個(gè)事件發(fā)生在一個(gè)元素上時(shí),如何觸發(fā)該元素及其祖先元素的相關(guān)事件處理程序,事件冒泡允許我們?cè)诓恢苯訛槟繕?biāo)元素添加事件處理程序的情況下,捕獲和處理事件。

成都創(chuàng)新互聯(lián)歡迎來(lái)電:028-86922220,為您提供成都網(wǎng)站建設(shè)網(wǎng)頁(yè)設(shè)計(jì)及定制高端網(wǎng)站建設(shè)服務(wù),成都創(chuàng)新互聯(lián)網(wǎng)頁(yè)制作領(lǐng)域十年,包括效果圖設(shè)計(jì)等多個(gè)行業(yè)擁有豐富的網(wǎng)站設(shè)計(jì)經(jīng)驗(yàn),選擇成都創(chuàng)新互聯(lián),為企業(yè)錦上添花。
事件冒泡的過(guò)程可以分為以下幾個(gè)階段:
1、事件捕獲階段:事件從根節(jié)點(diǎn)(document)開(kāi)始,逐級(jí)向下傳播,直到到達(dá)目標(biāo)元素,在這個(gè)過(guò)程中,事件處理程序會(huì)按照特定的順序被調(diào)用。
2、目標(biāo)處理階段:事件到達(dá)目標(biāo)元素后,觸發(fā)目標(biāo)元素的事件處理程序。
3、事件冒泡階段:事件從目標(biāo)元素開(kāi)始,逐級(jí)向上傳播,回到根節(jié)點(diǎn),在這個(gè)過(guò)程中,事件處理程序也會(huì)按照特定的順序被調(diào)用。
下面是一個(gè)使用表格來(lái)說(shuō)明事件冒泡過(guò)程的示例:
| 階段 | 描述 | 示例代碼 |
| 事件捕獲階段 | 事件從根節(jié)點(diǎn)開(kāi)始,逐級(jí)向下傳播 | document.addEventListener(‘click’, function(event) { console.log(‘document click’); }, true); |
| 目標(biāo)處理階段 | 事件到達(dá)目標(biāo)元素后,觸發(fā)目標(biāo)元素的事件處理程序 | button.addEventListener(‘click’, function(event) { console.log(‘button click’); }, false); |
| 事件冒泡階段 | 事件從目標(biāo)元素開(kāi)始,逐級(jí)向上傳播 | document.addEventListener(‘click’, function(event) { console.log(‘document click’); }, false); |
注意:在JavaScript中,可以通過(guò)addEventListener方法為元素添加事件處理程序,第三個(gè)參數(shù)表示是否在捕獲階段執(zhí)行事件處理程序,如果設(shè)置為true,則表示在捕獲階段執(zhí)行;如果設(shè)置為false或省略,則表示在冒泡階段執(zhí)行。
新聞名稱:什么是事件冒泡
文章轉(zhuǎn)載:
http://www.5511xx.com/article/dpjsdhe.html