Непонятки с dispatchEvent и useCapture
Пытаюсь проделать банальную весчь:
Код AS3:
|
capture фаза существует только для дисплейных объектов. Допустим у нас есть спрайт, в нем еще один, а в нем мувик. И мы кликаем по мувику. Сначала идет фаза захвата - событие спускается от спрайта к еще одному. Потом target фаза - это когда событие попало в мувик. Потом bubbling фаза, когда событие вновь начинает подниматься от мувика к вложенному спрайту и затем к внешнему.
Когда Вы ручками диспатчите событие - оно сразу начинает с таргет-фазы |
почему тогда если я делаю подписку не на this, а на stage - всё работает
Код AS3:
Код AS3:
|
Так с этого и нужно начинать - какого эффекта нужно добиться?
|
есть функция вызова всплывающего окна. Окно всегда вызывается в главном классе, "просят" же о том чтобы вызвать это окно кто попало, по сути это может сделать любое другое окно приложения. Задача состоит в том чтобы главный класс услышал молебный диспатч каждого и вызвал функцию showHelp, и что важно с учётом того что он сам у себя может попросить это окно, т.е this.dispatchEvent....:)
Добавлено через 1 минуту последнее конечно бред, но всё таки, интересно почему именно диспатч в самом себе не даёт желаемого эффекта |
А не проще сделать в основном классе статическую функцию, и обращаться к ней? или сделать главный класс Singleton?
|
Ну исходя из предлогаемых вариантов - тут нужен bubbling. Так как нам нужно от внуков достучаться до дедушки. То есть подняться вверх. Фаза захвата - это как раз процесс опускания события вниз, и оно тут незачем.
|
но суть то не меняется...какая вообще разница, чисто практически, на каком этапе ловить событие, на этапе погружения или на этапе всплытия?
|
При всплытии событие клонируется. При всплытии его уже обработали все ктохотел это сделать на этапе погружения
|
Цитата:
Цитата:
|
Часовой пояс GMT +4, время: 19:25. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.