[FLASH] 時間倒數

LINEで送る
[`evernote` not found]


很簡單 就是一個倒數的時間
比較需要注意的只有新建DATE物件時
月份的地方要減一 也就是10月的話是輸入9
分成兩位數顯示只是單純排列的問題囉!

至於字體(digital-7),可以到這邊下載

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
var today:Date = new Date();
var howyaer:Number;
if (today.getMonth()<10&&today.getDay()<29) {
	howyaer=today.getFullYear();
} else {
	howyaer=today.getFullYear()+1;
}
yeartxt.text = String(howyaer);
 
var timedate:Date=new Date(howyaer,9,29,0);
function countDown(){
	var countdate:Date = new Date();
	var overDate:Number = timedate.getTime() - countdate.getTime();
	var dayNum = Math.floor(overDate / 24 / 60 / 60 / 1000);
	var hourNum = Math.floor(overDate / 60 / 60 / 1000) % 24;
	var minNum = Math.floor(overDate / 60 / 1000) % 60;
	var secNum = Math.floor(overDate / 1000) % 60;
 
	dayNum = dayNum < 100?"0" + dayNum:dayNum;
	dayNum = dayNum < 10?"0" + dayNum:dayNum;
	hourNum = hourNum < 10?"0" + hourNum:hourNum;
	minNum = minNum < 10?"0" + minNum:minNum;
	secNum = secNum < 10?"0" + secNum:secNum;
 
	day1.text = String(dayNum).substr(0,1);
	day2.text = String(dayNum).substr(1,1);
	day3.text = String(dayNum).substr(2,1);
	hour1.text = String(hourNum).substr(0,1);;
	hour2.text = String(hourNum).substr(1,1);;
	min1.text = String(minNum).substr(0,1);
	min2.text = String(minNum).substr(1,1);
	sec1.text = String(secNum).substr(0,1);
	sec2.text = String(secNum).substr(1,1);
 
	setTimeout(countDown, 1000);
}
countDown();

20 則迴響於《[FLASH] 時間倒數

    • 嗯…前面有說==!

      「程式的部份是貼上就好!不過要在場景準備顯示用的文字框依照順序命名:day1,day2,day3,hour1…………..」

  1. 若是在倒數結束規零時,會觸發動畫效果(如秀出標題、煙火…等)
    ↑這語法如何寫?

      • THX~!~!~
        但我加了你寫的判斷式還是沒有變 大概是因為目標時間到了時候沒有全部規零…

        若是我把倒數目標日期改成小於今天的日期
        var timedate:Date=new Date(howyaer,5,14,0);
        則會變成↓
        0*4天0*時0*分0*秒
        ( * = 無顯示 )

        • 我上面補充的code應該是要插入在18行的地方喔!
          會有沒有顯示的地方表示計算有出錯。
          還有new Date(howyaer,5,14,0);是表示要計算到6/14。建議還是把全部的變數trace出來會比較清楚。

          • 1. 今天是八月三日,但顯示剩餘天數是1天…
            2. 時間到了還是沒辦法全部規零

            哪邊有計算錯誤? 麻煩幫看下~ THX~ ^ ^”

            var today:Date = new Date();
            var howyaer:Number;
            if (today.getMonth()<8&&today.getDay()<14) {
            howyaer=today.getFullYear();
            } else {
            howyaer=today.getFullYear()+1;
            }
            yeartxt.text = String(howyaer);

            var timedate:Date=new Date(howyaer,7,14,0);
            function countDown(){
            var countdate:Date = new Date();
            var overDate:Number = timedate.getTime() – countdate.getTime();
            var dayNum = Math.floor(overDate / 24 / 60 / 60 / 1000);
            var hourNum = Math.floor(overDate / 60 / 60 / 1000) % 24;
            var minNum = Math.floor(overDate / 60 / 1000) % 60;
            var secNum = Math.floor(overDate / 1000) % 60;

            if( dayNum == 0 && hourNum == 0 && minNum == 0 &&secNum == 0){
            gotoAndStop(2);
            } else {
            gotoAndStop(1);
            }
            dayNum = dayNum < 100?"0" + dayNum:dayNum;
            dayNum = dayNum < 10?"0" + dayNum:dayNum;
            hourNum = hourNum < 10?"0" + hourNum:hourNum;
            minNum = minNum < 10?"0" + minNum:minNum;
            secNum = secNum < 10?"0" + secNum:secNum;

            day1.text = String(dayNum).substr(0,1);
            day2.text = String(dayNum).substr(1,1);
            day3.text = String(dayNum).substr(2,1);
            hour1.text = String(hourNum).substr(0,1);;
            hour2.text = String(hourNum).substr(1,1);;
            min1.text = String(minNum).substr(0,1);
            min2.text = String(minNum).substr(1,1);
            sec1.text = String(secNum).substr(0,1);
            sec2.text = String(secNum).substr(1,1);

            setTimeout(countDown,1000);
            }
            countDown();

          • var timedate:Date=new Date(howyaer,7,14,0);
            會計算到下一個8/14,所以如果是想要計算到2012/8/3的話(為什麼是14阿?)
            應該是
            var timedate:Date=new Date(2012,7,3,0);

            howyaer的計算就不需要了!

            沒辦法全部規零是什麼狀況勒?你有把dayNum, hourNum ,minNum,secNum都trace出來看看嗎?

          • 我把trace加入了,輸出出來發現數字變成負數
            後來我把這個改成醬就行了 !~~!
            if( dayNum < 0 && hourNum < 0 && minNum < 0 &&secNum < 0)

            THX!~~!!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!

  2. 不好意思@@我想問年分那邊是怎麼設的@@
    我只看到了
    yeartxt.text = String(howyaer);
    這段
    但我設一個”yeartxt.text”的動態文字框
    輸入後上面只顯示年份
    月份那些我看你的程式好像沒像下面倒數那樣標示
    …我還是菜鳥..看不懂你上面那段
    var today:Date = new Date();
    var howyaer:Number;
    if (today.getMonth()<10&&today.getDay()”<

    • if (today.getMonth()<10&&today.getDay()<29) {
      howyaer=today.getFullYear();
      } else {
      howyaer=today.getFullYear()+1;
      }
      只是為了把一年的開頭以10/29計算而已

      「月份那些我看你的程式好像沒像下面倒數那樣標示」
      這個問題我不懂?

  3. 抱歉,我是個flash新手,最近在做影片,找到您的語法,但是我連怎麼開始都不會,難道是開新檔案,F9貼語法就好了嗎
    ……..

  4. 請問~我寫了一個是這個字型的時計
    可是我的11都會黏在一起~請問要寫什麼語法讓它分開!我看你的2011的1字都可以分開~

    謝謝^^

回應已關閉。