我有一些MovieClip
class
eventListener
,class
(MouseEvent.MOUSE_DOWN
的构造函数内部添加class
。现在,我想从父 {{1}}外部添加相同的侦听器,用于其他目的。这两个会相互干扰还是没关系?
答案 0 :(得分:2)
没关系。您可以根据需要添加任意数量的事件侦听器,它们都在侦听同一事件,并且不会相互干扰。
答案 1 :(得分:1)
这样做绝对合法。
您需要记住鼠标事件的工作原理。事件调度系统检查触发鼠标事件的对象的显示层次结构。然后有一个非常根元素 - 通常是阶段 - 和最底层元素,即事件目标。
Flash现在通知整个关于此事件的层次结构。如果此层次结构中的任何元素将侦听器设置为鼠标按下事件,则会收到通知。
通知是一个3步骤,从根元素向下(1)开始到目标元素,通知元素(2)并再次冒泡到根元素(3)。
自上而下的通知流程称为捕获阶段。要在此处接收通知,您需要将useCapture标志设置为true。自下而上的通知流程称为bubblin阶段。如果没有将useCapture设置为true,则默认情况下是您的父级注册的内容。
事件的目标阶段遵循捕获阶段。这里通知了触发事件的实际事件目标。
摘要:事件以三阶段程序发送。显示层次结构的元素可以监听该事件。
在此处找到网址链接:http://www.adobe.com/devnet/actionscript/articles/event_handling_as3.html