2010-11-04 3 views
2

Согласно документации Flash:EXIT_FRAME пузыри вверх?

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/events/Event.html#

В Event.EXIT_FRAME константа определяет значение типа собственности на объекта события exitFrame.

Примечание: Это событие не имеет ни «фазы захвата» ни «фазы пузырей», что означает, что обработчики событий должны быть добавлены непосредственно в любых потенциальных целей, будь то цель находится в списке отображения или не.

Однако при вызове gotoAndStop на ребенке DisplayObject событие EXIT_FRAME поднято на это контейнер и, кажется, нет никакого способа, чтобы остановить его.

Например:

 private function init(e:Event = null):void 
    { 
    removeEventListener(Event.ADDED_TO_STAGE, init); 
    // entry point 
    c = new Circle2(); 
    addChild(c); 

    this.addEventListener(Event.ENTER_FRAME, enterFrame); 
    this.addEventListener(Event.EXIT_FRAME, exitFrame); 
    } 

    private function enterFrame(e:Event):void 
    { 
    trace("enter frame"); 
    c.setPercent(5); // this calls gotoAndStop() 
    } 

    private function exitFrame(e:Event):void 
    { 
    trace("exit frame"); 
    } 

Выход:

ввести фрейм

выход кадра

выход кадра

В circle2 конструктору Я попытался это

this.addEventListener(Event.EXIT_FRAME, function(e:Event):void 
{ 
e.stopPropagation(); 
}); 
+0

У меня такое же поведение в AS3 - Flash CC Pro. Я пытаюсь обнаружить случай в обработчике событий, поэтому я могу остановить выполнение перед запуском реального кода ... – jacmkno

ответ

0

Вы можете попробовать использовать capture phase, а затем вызвать stopPropagation в него.

this.addEventListener(Event.EXIT_FRAME, function(e:Event):void 
{ 
    e.stopPropagation(); 
}, true); 

Обратите внимание на истинный в конце addEventListener.

+0

Спасибо за ваш ответ, но, к сожалению, это не имеет никакого значения. –

+0

@ChrisPorter вы когда-нибудь находили объяснение этому? Я экспериментирую в той же ситуации; несколько EXIT_FRAME без соответствующего ENTER_FRAME. Благодаря! – Jotakun

Смежные вопросы