ГлавнаяActionScript 3 — «100 советов» › Определение фазы события

Определение фазы события

June 19th, 2006
Обработчик события в ActionScript 3 может определить фазу события (см. предыдущий совет о фазах событий) по свойству eventPhase, которое может принимать три значения:
  • EventPhase.CAPTURING_PHASE
  • EventPhase.AT_TARGET
  • EventPhase.BUBBLING_PHASE

Пример:

Код:
var circle:Sprite = new Sprite(); circle.graphics.beginFill(0x4080A0); circle.graphics.drawCircle(50, 50, 25); addChild(circle); circle.addEventListener(MouseEvent.CLICK, clickCircle); circle.addEventListener(MouseEvent.CLICK, clickCircle, true); stage.addEventListener(MouseEvent.CLICK, clickStage); stage.addEventListener(MouseEvent.CLICK, clickStage, true); function clickCircle(evt:MouseEvent):void { trace("clickCircle: " + getPhaseName(evt.eventPhase)); } function clickStage(evt:MouseEvent):void { trace("clickStage: " + getPhaseName(evt.eventPhase)); } function getPhaseName(phase:int):String { switch(phase) { case EventPhase.CAPTURING_PHASE: return "Capturing Phase"; case EventPhase.AT_TARGET: return "At Target Phase"; case EventPhase.BUBBLING_PHASE: return "Bubbling Phase"; } return "Error: No Phase Detected"; }

Кликнув по кругу:

Код:
//output clickStage: Capturing Phase clickCircle: At Target Phase clickStage: Bubbling Phase

Кликнув вне круга:

Код:
//output clickStage: At Target Phase

Категория: ActionScript 3 — «100 советов» Ярлыки: ,

Смотрите также

Фазы событий Предотвращение распространения события
  1. Пока без комментариев.
  1. Пока нету.