【问题标题】:Using this to compare objects (Actionscript 3)使用它来比较对象 (Actionscript 3)
【发布时间】:2012-02-15 09:16:37
【问题描述】:

我试图在 _ar_cards 数组中查找事件调用者的位置,但是这段代码不起作用。怎么了?

for( var i = 0; i < 3; i++ )
    {
        if(this == _ar_cards[i])
        {
            mouseEvent.target.alpha = 0.1;
        }
    }

【问题讨论】:

    标签: arrays events actionscript this


    【解决方案1】:

    只需在循环中添加跟踪函数即可:

    for (var i:int = 0; i < 3; ++i)
    {
        trace(this.name, _ar_cards[i].name);
    
        if (this == _ar_cards[i])
        {
            trace("It works!");
            mouseEvent.target.alpha = 0.1;
        }
    }
    

    你会发现问题出在哪里。

    【讨论】:

    • 我明白了......但是有什么办法可以做我想要完成的事情吗?如果是,怎么做?
    • 是的,这是可能的。但是有很多原因,为什么您的代码不起作用。请显示跟踪函数的结果。
    • 似乎this 引用了root 1。但是_ar_cards 中只有 A、B、C 对象。试试这个 `if (mouseEvent.target == _ar_cards[i])'。
    猜你喜欢
    • 2013-06-11
    • 1970-01-01
    • 1970-01-01
    • 2016-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多