0

我已經使用ENTER_FRAME淡出動畫。我希望淡出在2-3秒後開始。我如何創建這個延遲?AS3:延遲輸入幀動畫

txtAlert.addEventListener(Event.ENTER_FRAME,animAlert); 

function animAlert(e:Event) { 
    if(e.target.alpha>0) { 
     e.target.alpha-=0.01; 
    } else { 
     e.target.parent.removeChild(e.target); 
     e.target.removeEventListener(Event.ENTER_FRAME,animAlert); 
    } 
} 

回答

4

你應該用一個定時器:

var timer:Timer = new Timer(3000, 1); 
    timer.addEventListener(TimerEvent.TIMER, action); 
    timer.start(); 

function action(evt:TimerEvent):void{ 
    txtAlert.addEventListener(Event.ENTER_FRAME,animAlert); 

    trace("Times Fired: " + evt.currentTarget.currentCount); 
    trace("Time Delayed: " + evt.currentTarget.delay); 
} 

BTW你應該看看動畫庫,例如纏繞植物,這將使你的生活輕鬆了許多。

+1

我不知道Twiner庫,但Greensock的TweenMax(http://www.greensock.com/tweenmax/)是一個非常知名的用於腳本動畫的庫,非常穩定和靈活。 – epologee 2011-02-07 20:35:55