AS3事件冒泡机制

import flash.events.MouseEvent;
a.b.addEventListener(MouseEvent.CLICK,bclickHandler);
function bclickHandler(e:MouseEvent):void
{
trace("bclick");
a.addEventListener(MouseEvent.CLICK,aclickHandler);
}
function aclickHandler(e:MouseEvent):void
{
trace("aclick");
}
第一次点击B方块,会发现输出
bclick
aclick
在bclickHandler方法执行的时候为a方块添加了监听事件,由于AS3的事件冒泡机制,事件直接传递到a方块,所以输出 了ackick;
如果点击b方块的时候如何不让a接收到呢
在bclickHandler 方法 添加一行
e.stopPropagation();
这个方法是AS3提供用来中断冒泡的
浙公网安备 33010602011771号