让AS3功能在时间轴中的每个位置运行?每60秒

时间:2012-09-28 00:10:14

标签: actionscript-3 flash

我可以以某种方式创建一个在所有时间线和各处运行的功能吗?

每60秒运行一次?

3 个答案:

答案 0 :(得分:2)

使用flash.utils.setInterval功能:

setInterval(functionToCall , 60000 );

答案 1 :(得分:1)

你的意思是你想每隔60秒运行一个函数并跟踪从项目的任何地方调用该函数的时间吗?

为此你可以简单地从项目的根目录调度一个事件(例如MainTimeline):

var timer:Timer = new Timer(60000);

timer.start();
timer.addEventListener(TimerEvent.TIMER, handleMinuteElapsed);

function handleMinuteElapsed(e:TimerEvent):void
{
    // Create and dispatch a custom event.
    // You should consider extending the Event class and using your Event instead,
    // this is primarily for demonstration and ease of implementation.
    var event:Event = new Event("MinuteElapsed");
    dispatchEvent(event);
}

现在,在任何时间轴的项目中,您都可以使用:

root.addEventListener("MinuteElapsed", handler);

function handler(e:Event):void
{
    // Do something in response to the event being triggered.
    //
}

答案 2 :(得分:0)

转到根目录,创建一个新图层并添加该功能。使用MovieClip(root).functionName();

从之前调用它