如何添加变量“userSave”使代码看起来像第二个片段?
var userSave:Number = 1;
user_presets["u"+userSave].addEventListener(MouseEvent.MOUSE_DOWN, ["u"+userSave]);
function ["u"+userSave](event:MouseEvent):void
{
}
// It needs to look like this:
user_presets.u1.addEventListener(MouseEvent.MOUSE_DOWN, u1);
function u1(event:MouseEvent):void
{
}
编辑:好的,让我试着解释一下我想要实现的目标。我为如此含糊而道歉。我花了一些时间来弄清楚我要做什么。
我有 36 个按钮,我想做下面的代码。下面的代码是第一个按钮。下一个按钮需要是 u2、u3、u4 等。因此,以下代码中 u1 的所有实例都需要针对每个按钮进行相应更改。如何在不重复此代码 36 次的情况下执行此操作?代码在时间线上。
f_presets.user_presets.u1.addEventListener(MouseEvent.MOUSE_DOWN, u1);
function u1(event:MouseEvent):void
{
if (saveFlag == "play")
{
userSave = "u1";
myuserSave();
}
else
{
userSave = "u1";
myuserPlay();
}
}
最终编辑 感谢所有帮助。这就是最终为我工作的原因。
for (var i:Number=1; i<37; i++)
{
var userSaver = "u" + i;
f_presets.user_presets[userSaver].addEventListener(MouseEvent.MOUSE_DOWN, recall);
function recall(event:MouseEvent):void
{
if (saveFlag == "play")
{
trace(userSave = event.currentTarget.name);
myuserSave();
}
else
{
trace(userSave = event.currentTarget.name);
if (mySO.data["user_saved" + userSave] == "yes")
{
myuserPlay();
}
}
}
}