as3条件语句不起作用

Posted

技术标签:

【中文标题】as3条件语句不起作用【英文标题】:as3 conidtional statement not working 【发布时间】:2011-01-08 16:13:28 【问题描述】:

在我的代码中:

var manTimer:Timer = new Timer(1700,5);
manTimer.addEventListener(TimerEvent.TIMER, moveMan);
function moveMan(e:TimerEvent):void 
    var manX:Tween = new Tween(man, "x", Regular.easeIn, man.x, man.x - 100, 1.5, true);


function startMan(e:MouseEvent):void 
    manTimer.start();
    var manX:Tween = new Tween(man, "x", Regular.easeIn, man.x, man.x - 100, 1.5, true);


if(man.x > 589) 
paper.btnElScorcho.addEventListener(MouseEvent.CLICK, startMan);
paper.btnTheGoodLife.addEventListener(MouseEvent.CLICK, startMan);

我试图得到它,以便当点击 btnElScorcho 或 btnTheGoodLife 时,它​​会将我的“人”mc 移到舞台上。它从 590px 开始,到 -10px 结束。那部分正在工作。

不起作用的是我的条件语句,它告诉它仅在“人”位于 590 或更大的 x 位置时才移动他,因为当再次单击 2 个按钮之一时,我不希望如果他已经在那里或者他已经搬出去了,就把他搬出去。

因此,由于某种原因,“man”在第二次单击按钮时仍会移动,而且奇怪的是,“man”只会移动两次,而不是函数中设置的正常 5 次。

也许我可以更改 if 语句来检查按钮是否已经被点击,而不是“man”在哪里?

谢谢, 韦德

【问题讨论】:

【参考方案1】:

有一点误解。 addEventListener 将永远注册处理函数,而不仅仅是一键。您要做的是在程序开始时调用 addEventListener 一次,然后检查处理函数内部的条件,如果它为假,则跳过处理代码。

【讨论】:

我想我明白了。对不起,但是我将如何写这篇文章呢?我不太确定。 从头开始,明白了。非常感谢。

以上是关于as3条件语句不起作用的主要内容,如果未能解决你的问题,请参考以下文章

在连接条件中使用时语句在 oracle 中不起作用的情况

使用点运算符访问字典时条件语句在 Django 模板中不起作用

SAS条件IF-THEN语句不起作用

如何为单个If语句执行多个条件

在 Cypress 中使用 2 个条件和 IF 语句

如何用 IF 语句创建条件?