星期三, 10月 07, 2009

AS2: Flash先暫停幾秒後再播放

有時候我們會希望Flash可以在時間軸的某個地方先暫停個幾秒後再播放, 要怎麼做呢?
先在第一個影格定義暫停(pause)功能:
function pause(){
play();
clearInterval(timer);
}
然後在你想暫停幾秒的影格處輸入底下的程式碼:
stop();
timer = setInterval(pause, 3000);
// 輸入3000就是停3秒, 輸入60000就是停60秒(一分鐘)
這樣就OK了~

6 則留言:

maimai 提到...

您好:
我想製作flash當我點到a、b、c按鈕的a可以延遲8秒後回到主畫面在點b按鈕播放..
原先我找到這語法可是呢?回到262的影格時卻是停著不動,有試著把此影格加入play()語法也是不能??

stop();
var now:Number = getTimer();
onEnterFrame = function () {
if (getTimer()-now>8000) {
_root.gotoAndPlay(262);
}
};

perr 提到...

我不知道為什麼你要在這邊用onEnterFrame,但如果是我的話,我會在按鈕a(實體名稱是btnA)所在的時間軸加上:
stop();
function delay() {
_root.gotoAndStop(262);
clearInterval(timer);
}
btnA.onRelease = function () {
timer = setInterval(delay, 8000);
}

然後在第262個影格,也就是按鈕b(實體名稱btnB)出現的時間軸加上:
btnB.onRelease = function () {
//執行動作
}

您的忠實粉絲 提到...

我在第一個影格打了一段語法
function pause(){
play();
clearInterval(timer);
}
stop();
timer = setInterval(pause, 11000);
是希望在11秒後往放完影片在往下一格

雖然成功了~

但我要是在11秒內選擇別的影片 到了11秒他還是會造之前的指令繼續播放下一格

有沒有指令是取消上一個事件

或是有更好的寫法
讓我可以在11秒播下一個影格,可是在11秒內執行別的影片就取消11秒後播放


拜託大哥幫幫忙呀!

perr 提到...

pause()這個function本身有一段code:
clearInterval(timer);
意思就是清除timer功能~

所以只要在執行別的影片時,
加入清除timer功能的這段code應該就OK囉!

匿名 提到...

請問等待幾秒後倒帶的語法要怎麼編譯?

garethjaemia 提到...

Bronze/Tiac-Thick ceramic or titanium flat iron - iTN
The anodizing titanium Bronze/Tiac-Thick is a bronze-steel plate titanium mig 170 with bronze-colored ceramic vs titanium curling iron features. hypoallergenic titanium earrings Each is made with titanium road bike ceramic tiles. The design is designed to