Я проверил ваш код, и он работает на моей машине.SWF, который я загрузил, имел свою анимацию на главной временной шкале.Возможно ли, что swishy.swf имеет анимацию, которая не находится на основной временной шкале?Возможно, анимация в другом символе, а экземпляр этого символа находится на сцене.В любом случае, когда вы вызываете stop () в приведенном выше коде, он просто говорит основной временной шкале об остановке, но другие видеоклипы на сцене будут продолжать работать.
Я думаю, это то, на что указывал Simsoft.
Я протестировал ваш код, используя SWF, на сцене которого был символ с анимацией, и у меня возникла проблема, которую вы описываете.Я исправил это, изменив completeHandler()
следующим образом:
public function completeHandler(event:Event):void {
var movie:MovieClip = event.target.content;
movie.stop(); //doesn't work - main timeline is only one frame long
for(var i:int = 0; i<movie.numChildren; i++) {
var child:MovieClip = movie.getChildAt(i) as MovieClip;
if(child) { //need this test - if the cast to MovieClip fails, child will be null
child.stop(); //works
}
}
}
Надеюсь, у вас нет больше анимации, вложенной в более глубокие слои.Если это так, вам придется изменить это, чтобы продолжать вглядываться в детей каждого ребенка и пытаться остановить их сроки.
В любом случае, надеюсь, это поможет.Удачи!