在函数AS3.0中调用变量

时间:2011-09-25 12:35:27

标签: flash actionscript-3 actionscript

我正在尝试通过函数传递变量,但我得到它的值0

这是我的代码:

thumbLoader.addEventListener(MouseEvent.CLICK, goToCategory);

function goToCategory(e:MouseEvent) {
    trace(c);
    gotoAndStop(2);
    doSMTH(0);
}

这条曲线给我的值为0.

通常我会去goToCategory(c)并且在那个类别中我会得到它的值,但在这种情况下我用一个事件来调用这个函数,怎么做呢?

var c是全局声明的,所以我在不同的地方使用它代码...

在PHP中有像全球$ c那样的sm ..还是有其他方法可以做到这一点?

提前致谢!!!

2 个答案:

答案 0 :(得分:3)

你可以尝试不使用全局变量,但是如果你真的不知道怎么做,那么一个解决方案是使用静态类,并将你的全局变量添加到它:

package {

    public class Globals {

        static public var c:String = "";

    }

}

然后使用:

访问全局
trace(Global::c);

只是编写这段代码让我颤抖,但这是拥有全局变量的一种方式。

答案 1 :(得分:2)

我假设变量c可用于添加鼠标单击侦听器的位置。在这种情况下,这应该做你想要的。

thumbLoader.addEventListener(MouseEvent.CLICK, function(e:MouseEvent)
                                               {
                                                   goToCategory(c);
                                               }
);

function goToCategory(c:*)
{
    trace(c);
    gotoAndStop(2);
    doSMTH(0);
}