单击AS3上另一个动画片段内的动画片段

时间:2013-10-15 14:31:10

标签: actionscript-3 flash

好吧,我需要它很简单,但它让我发疯,我想知道AS3是否在动画片段中检测到我的鼠标。 例如,我有一个movieclip实例“BEframes”,它位于movieclip“BE1”中,我想把他放在一个新的movieclip实例“roll”中。所以订单将滚动> BE1> BEframes。 我想知道flash是否只会检测到“roll”,或者他会检测所有的动画片段,谢谢,

for(i=1;i<=77;i++){
    var str:String =("BE" + i);
    this[str].BEframes.gotoAndStop(i);
    this[str].addEventListener(MouseEvent.CLICK, clique);
    this[str].addEventListener(MouseEvent.ROLL_OVER, over);
    this[str].addEventListener(MouseEvent.ROLL_OUT, out);
    }
function clique(evt:MouseEvent):void{
    var botao:String = evt.currentTarget.name.toString();
    var num:String = botao.replace("BE", "");
    parede_esquerda.gotoAndStop(num);
}
function out(evt:MouseEvent):void {
    evt.currentTarget.gotoAndPlay("out");
}`enter code here`
function over(evt:MouseEvent):void {
    evt.currentTarget.gotoAndPlay("over");
}

*

2 个答案:

答案 0 :(得分:0)

可能你应该使用MOUSE_OVER和MOUSE_OUT而不是ROLL_OVER和ROLL_OUT。

this[str].addEventListener(MouseEvent.MOUSE_OVER, over);
this[str].addEventListener(MouseEvent.MOUSE_OUT, out);

答案 1 :(得分:0)

要避免接收movieClip的mouseEvent,请将mouseEnabled设置为false,即如果您不希望将clip roll的鼠标事件设置为roll.mouseEnabled = false,以便下面的对象将接收mouseEvent