事件冒泡(Event Bubbling)是指當(dāng)一個(gè)元素上的事件被觸發(fā)時(shí),該事件會(huì)從最具體的元素開始逐級(jí)向上傳播,直到最頂層的元素(通常是文檔對(duì)象)被觸發(fā)。
舉個(gè)例子,如果一個(gè)按鈕嵌套在一個(gè) div 元素中,并且同時(shí)綁定了一個(gè)點(diǎn)擊事件,當(dāng)點(diǎn)擊按鈕時(shí),按鈕的點(diǎn)擊事件會(huì)被觸發(fā),并且該事件會(huì)從按鈕元素開始冒泡,逐級(jí)向上傳遞,直到 div 元素和文檔對(duì)象被觸發(fā)。
在事件冒泡的過程中,可以通過阻止事件冒泡來防止事件繼續(xù)向上傳遞。例如,可以在點(diǎn)擊按鈕的事件處理程序中使用 event.stopPropagation() 來阻止事件繼續(xù)冒泡。
事件冒泡是瀏覽器中事件模型的一部分,它使得在嵌套的元素中處理事件變得更加方便和靈活。同時(shí)也需要注意,如果不加以控制,事件冒泡可能會(huì)導(dǎo)致意外的行為,例如一個(gè)元素的事件處理程序被多次觸發(fā)。