【问题标题】:为什么“else”语句在 AS3 中不起作用?
【发布时间】:2021-07-13 08:48:12
【问题描述】:

如果单击,我会从movieClip 创建一个按钮,目标将移动到下一帧。如果再次单击,目标将返回上一帧。

对于“IF”语句成功执行,但对于“else”代码不起作用。

我的代码有什么问题?

btn1.stop(); //stop the movieclip frame
btn1.addEventListener(MouseEvent.CLICK, clicked);
function clicked(e: MouseEvent): void {
    var namebtn:String = e.currentTarget.name;
    if (namebtn == "btn1"){
      e.currentTarget.nextFrame();
    } else {
      e.currentTarget.prevFrame();
    }
}

【问题讨论】:

  • 因为是同一个按钮所以条件总是true

标签: actionscript-3 actionscript


【解决方案1】:

您使用的是moviclip实例名称,这就是为什么只有if语句有效 你可以试试这个


btn1.stop(); //stop the movieclip frame
btn1.addEventListener(MouseEvent.CLICK, clicked);
function clicked(e: MouseEvent): void {
    if (btn1.currentFrame == 1){
      e.currentTarget.nextFrame();
    } elseif(btn1.currentFrame == 2) {
      e.currentTarget.prevFrame();
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-05
    • 1970-01-01
    • 2020-11-28
    • 2018-07-30
    相关资源
    最近更新 更多