【发布时间】:2019-11-01 00:16:41
【问题描述】:
我的代码使用 AS3,(if-else)当我运行它时不会给我一个错误,但也没有给我我想要的(if)结果。 (tom) 对象必须是不可见的,如果触摸另一个称为 (food)else (tom) 的对象,则返回 ot 的位置 这个想法是(拖放)
var hits = 0;
tom.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
tom.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);
function mouseDownHandler(evt:MouseEvent):void {
var object = evt.target;
// we should limit dragging to the area inside the canvas
object.startDrag();
}
function mouseUpHandler(evt:MouseEvent):void {
var obj = evt.target;
var target = obj.dropTarget;
if (target == food && obj == tom) {
obj.visible=false;
} else {
obj.x=1051.05;
obj.y=135.05;
obj.stopDrag();
}
}
【问题讨论】:
-
在这种情况下,您trace obj.dropTarget 是什么。如果条件为 false,则放置目标不是食物。
-
不明白
-
大多数编码语言都有一个日志系统,用于告诉您程序“看到”或“理解”了什么。在 AS3 中,此 log 称为 trace,您可以通过编写
trace( xyz );来记录,其中xyz会替换为您需要检查的内容,例如使用trace( "The width is... " + obj.width);告诉您 obj 的宽度。当您trace("your mouse OBJ is.. " + obj);时,如果输出选项卡中给出的答案不是your mouse OBJ is.. tom,那么您的IF/Else代码将不会响应。
标签: actionscript-3 animate.css