AS3事件流機制,在這邊快速的做個筆記
Flow有三個階段 Capturing >Targeting > Bubbling
Capturing : 捕獲階段
從上層往下找出監聽器,碰到則發出事件
Targeting : 目標階段
調用目標本身監聽器
Bubbling : 冒泡階段
從下方往上找出監聽器,碰到則發出事件
使用:
預設的情況下, Capturing 這一段是關閉的
只捕捉Targeting > Bubbling這段
若要開啟Capturing 這段
從addEventListener 可做設定
addEventListener("type", anyFunction, true);
後面的第三個參數設為true的話就代表開啟捕捉Capturing >Targeting這一段流程
開啟Capturing 的話,程式就會忽略Targeting > Bubbling這段
而只剩Capturing
而我們可以從事件中的屬性得知訊息
target : 事件目標
currentTarget : 事件流目標
eventPhase : 事件流階段
另外
Event在預設中是只會抓取Targeting這一階段的
Event的Bubble預設為false
但也可通過參數的設定,來捕捉冒泡階段
new Event("type", true);
------------------------------------------------------------------
只有 DisplayObjectc 有事件流機制
相關 : http://livedocs.adobe.com/flex/3/html/help.html?content=events_08.html
- May 05 Mon 2008 00:02
AS3 Event Flow
close
全站熱搜
留言列表