В ActionScript 3 большинство событий используют модель захвата / цели / пузыря, которая очень популярна в настоящее время:
Когда событие происходит, оно проходит через три фазы потока событий:фаза захвата, которая течет от вершины иерархии списка отображения к узлу непосредственно перед целевым узлом;целевая фаза, которая содержит целевой узел;и фаза барботирования, которая течет от узла, следующего за целевым узлом, обратно в иерархию списка отображения.
Однако некоторые события, такие как событие enterFrame
класса Sprite, не захватывают ИЛИпузырь - вы должны подписаться непосредственно на цель, чтобы обнаружить событие.Документация называет их «вещательными событиями».Я предполагаю, что это из соображений производительности, так как эти события будут запускаться постоянно для каждого спрайта на сцене, и вам не нужно иметь дело со всем этим избыточным распространением событий.
Я хочу отправить свою собственную трансляциюСобытия.Я знаю, что вы можете предотвратить всплытие события (Event.bubbles = false
), но вы также можете избавиться от захвата?