Согласно Flash документам:
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/events/Event.html#
Константа Event.EXIT_FRAME определяет значение свойства type объекта события 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();
});