as3-stopImmediatePropagation(转)
代码 this.addEventListener(MouseEvent.MOUSE_DOWN, funA,false,2);
this.addEventListener(MouseEvent.MOUSE_DOWN, funB,false,1);
function funA (evt:MouseEvent):void
{
trace ("A!");
evt.stopImmediatePropagation ();
}
function funB (evt:MouseEvent):void
{
trace ("B!");
}
this.addEventListener(MouseEvent.MOUSE_DOWN, funB,false,1);
function funA (evt:MouseEvent):void
{
trace ("A!");
evt.stopImmediatePropagation ();
}
function funB (evt:MouseEvent):void
{
trace ("B!");
}
因为侦听器funA的优先级为2比funB高,所以先执行了funA,而在funA里面有evt.stopImmediatePropagation ();因此funB没有被执行 输出结果就是一个"A"。
结论:stopImmediatePropagation的作用,总结就是“可以阻止掉同一事件的其他优先级较低的侦听器的处理”
转载自:http://bbs.9ria.com/thread-12034-1-1.html



浙公网安备 33010602011771号