![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: May 2010
Сообщений: 59
|
спасибо всем за помощь, кто помогал ;-)
решил не пользоваться кадрами совсем... буду работать на чистом AC3 |
|
|||||
|
Регистрация: Aug 2008
Сообщений: 5
|
Сегодня часа два проковырялся с такой же проблемой, причём на другой машине всё работало отлично.
Глюк именно при имитации загрузки клипа во флэш. Такое впечатление, что почему-то не отрабатывает в загрузчике removeEventListener. Решил вот так: Может не совсем правильно, но вроде работает... Последний раз редактировалось udaaff; 22.10.2010 в 15:59. |
|
|||||
|
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
Тигра, ну если несколько слушателей и мы хотим отписаться от всех, то примерно так и будет
function _onEnterFrame(e:Event){ trace("1"); } function _onEnterFrame2(e:Event){ trace("2"); } this.addEventListener(Event.ENTER_FRAME,_onEnterFrame); this.addEventListener(Event.ENTER_FRAME,_onEnterFrame2); //запустили - в аутпут падают и 1 и 2 //идем далее: trace(hasEventListener(Event.ENTER_FRAME));// true, дописываем дальше: this.removeEventListener(Event.ENTER_FRAME,_onEnterFrame); trace(hasEventListener(Event.ENTER_FRAME));// true, пересатили падать 1 в аутпут, дописываем дальше: this.removeEventListener(Event.ENTER_FRAME,_onEnterFrame2); trace(hasEventListener(Event.ENTER_FRAME));//false;
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
|
Ну вообще-то этот скрипт
убъет фп в случае если 2 метода-обработчика.
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
ну если слушатель в цикле не будет меняться, то да )
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
|
Ну вообще-то сомнительно перед глобальной отпиской проверять, есть ли такой слушатель.
var i:int = 20000; var time:Number = getTimer(); while (i--){ super.addEventListener(Event.ENTER_FRAME, onEnterFrame); if (super.hasEventListener(Event.ENTER_FRAME)) super.removeEventListener(Event.ENTER_FRAME, onEnterFrame); } trace(getTimer() - time); //~23
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
Цитата:
__________________
...вселенская грусть |
|
|||||
|
Единственная возможная причина была - стероид для скорости. Например, если нет слушателей для события, перед которым делается диспатч - то проверка на этот слушатель даст прирост в скорости почти в 15 раз. Из этих соображений можно было бы предположить, что отписка от несуществующего события тоже вещь затратная, однако моя проверка развеяла этот миф )
__________________
Тут мужик танцует и поёт про флэш |
![]() |
![]() |
Часовой пояс GMT +4, время: 17:15. |
|
|
« Предыдущая тема | Следующая тема » |
|
|