事件冒泡:事件物件沿dom樹向上傳播
事件捕獲:事件物件沿dom樹向下傳播
addeventlistener(「click」,function(){},flase)
引數預設為false 代表事件冒泡,引數為true代表事件捕獲
attachevent(「onclick」,function(){})/detachevent()沒有第3個引數
示例:html
"ul"
>
"item1"
>item1
"item2"
>item2
"item3"
>item3
"item4"
>item4
"item5"
>item5
"item6"
>item6
js
//事件委託:將本該由子元素所執行的事件交由父元素代替執行,這是利用了事件冒泡的原理
//好處 1.提公升了效率2.能夠給未來元素新增事件
var fath=document.
getelementbyid
("ul"
) fath.
addeventlistener
("click"
,function
(event)
else
if(event.target.id ==
"item2"
)else
if(event.target.id ==
"item3"
)else
if(event.target.id ==
"item4"
)else
if(event.target.id ==
"item5"
)else},
true
)
事件捕獲和事件冒泡
如果乙個節點和它的乙個父節點都繫結了相同事件型別的 當事件觸發時哪個 會先執行?儘管網景和微軟的處理方式不一致,也不要太過擔心。netscape 4 支援事件捕捉 capturing 從頂層的父節點開始觸發事件,從外到內傳播。微軟則支援事件冒泡 bubbling 從最內層的節點開始觸發事件,逐級冒泡...
事件冒泡和事件捕獲
在js中,繫結的事件預設的執行時間是在冒泡階段執行,而非在捕獲階段 重要 這也是為什麼當父類和子類都繫結了某個事件,會先呼叫子類繫結的事件,後呼叫父類的事件。直接看下面例項 當點選id3元素時候,執行結果是 id2,id3,id1 解析 因為obj2與obj3繫結的方法在捕獲階段執行,obj1的事件...
事件冒泡和事件捕獲
物件導向 單列模式 工廠模式 建構函式 1 類 js天生自帶的類 object 基類 function array number math boolean date regexp string 1.事件 瀏覽器客戶端上客戶觸發的行為都稱為事件 所有的事件都是天生自帶的,不需要我們去繫結,只需要我們去...