首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >AS3中的If语句不工作

AS3中的If语句不工作
EN

Stack Overflow用户
提问于 2011-11-25 20:22:25
回答 3查看 1.1K关注 0票数 1

这是根上的一个框架上的假体。我想把Carrera(一个宽大的电影)从框架2循环回框架1。(为了测试目的)

这是代码:

代码语言:javascript
运行
复制
if (MovieClip(root).Carrera.currentFrame==2){
   MovieClip(root).Carrera.gotoAndPlay(1);
}

MovieClip 继续运行,忽略if语句。我在做什么?

EN

Stack Overflow用户

发布于 2011-11-25 20:36:00

您必须理解,您正在运行此if语句,只运行一次。即使卡雷拉剪辑是在第2帧的准确时刻,剪辑将跳到播放1和继续播放-没有什么可以让它再次跳,因此永远不会有一个循环。

为了使其工作,您必须一次又一次地运行这个相同的语句-每次剪辑跳转到一个新的框架。

例如,您可以这样做:(将此脚本附加到Carrera剪辑的框架2(而不是根!):

代码语言:javascript
运行
复制
gotoAndPlay(1);

或( b)向其添加事件侦听器:

代码语言:javascript
运行
复制
MovieClip(root).Carrera.addEventListener (Event.ENTER_FRAME, 
    function ( ev:Event ) : void {
        var cl:MovieClip = ev.target as MovieClip;
        if (cl.currentFrame == 2) cl.gotoAndPlay(1);
    }

有更多的方法可以做到这一点,但是除非你要做比时不时跳到框架更复杂的事情,否则我建议你选择第一个选项--在尝试事件侦听器之前,你应该了解更多关于ActionScript的知识。

票数 2
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8273873

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档