Function 函数actionscript中的问题
如何添加随循环中的虚拟变量而变化的变量:Function 函数actionscript中的问题,function,actionscript-2,Function,Actionscript 2,如何添加随循环中的虚拟变量而变化的变量: function resetAll(menuNum){ trace(menuNum); for (i=0; i<=7; i++){ if(menuNum != 1){ menu_all_mc.this["btn_"+i].gotoAndStop("off"); } } } 这个不起作用 我需要传递btn名称,比如:btn_1和下一个循环btn_2…我严格地猜测我不做Actionscript,而是做JS,但是
function resetAll(menuNum){
trace(menuNum);
for (i=0; i<=7; i++){
if(menuNum != 1){
menu_all_mc.this["btn_"+i].gotoAndStop("off");
}
}
}
这个不起作用
我需要传递btn名称,比如:btn_1和下一个循环btn_2…我严格地猜测我不做Actionscript,而是做JS,但是如果你的I变量保持不变,那么你需要使用闭包来捕获并绑定I:
function resetAll(menuNum){
trace(menuNum);
for (i=0; i<=7; i++){
(function(i){
if(menuNum != 1){
menu_all_mc.this["btn_"+i].gotoAndStop("off");
}
})(i);
}
}
将计算为true,因为它从未定义过。函数作用域中的此项将引用当前执行上下文,但不使用另一个对象作为其前缀
你能澄清什么对象拥有.btn1等吗
menu_all_mc.this["btn_"+i].gotoAndStop("off");
这不能是一个类的成员,我猜你想要
menu_all_mc["btn_"+i].gotoAndStop("off");
甚至
menu_all_mc[this["btn_"+i]]gotoAndStop("off");
仅供参考:如果不提供预期的结果,说这句话是行不通的,对其他人也没有帮助。用一种你不懂的语言进行测试也没有什么帮助。
menu_all_mc[this["btn_"+i]]gotoAndStop("off");