发新话题
打印

[求救] 关于点击互动的问题

关于点击互动的问题

思路:用attachMovie 在主场景用循环的方法加入i个影片剪辑:
var i:Number
for(i=1;i<4;i++){
_root.attachMovie("_mc","_mc"+i,i*5)}
这样便加载了3个相同的影片剪辑

如果我想点第1个影片剪辑输出1,点第2个输出2 ......
我是这么做的:
for(i=1;i<4;i++){
this["_mc"+i].onPress=function(){
trace(i)
}
}

结果跟我预料的一样只是输出4! 虽然我也知道会显示4 但是如果想实现第1个影片剪辑输出1,点第2个输出2 .........的效果 请问该怎么写 谢谢 (不想用 select case 那样做 想通过循环的方式)

TOP

复制内容到剪贴板
代码:
var i:Number
for(i=1;i<4;i++){
var _mc:MovieClip =_root.attachMovie("_mc","_mc"+i,i*5,{p:i});//给它添加一个属性,就是当前的i
_mc.onPress=function(){
trace(this.p);//输出它记住的i
}
}

TOP

这样也行:
var i:Number;
for (i=1; i<4; i++) {
_root.attachMovie("_mc", "_mc"+i, i*5, {_x:50*i, _y:100});
}
for (i=1; i<4; i++) {
this["_mc"+i].onPress = function() {
  trace(this._name.charAt(3));
};
}
未命名-1.fla (32 KB)

TOP

版主的代码只能输出3

版主,你在for语句里面,给绑定命令添加了一个属性p:i.但是根据for语句的特点,点击时、只能输出最后一个值3.

TOP

发新话题