javascriptでカウントダウンタイマー
お世話になります。
JavaScriptでカウントダウンをWEBに表示させたいと思っています。
WEBで見つけた3種類を試してみました。
下記、例A 締め切りを1カ月後に指定
<!--
the_day = new Date(2008,11,8)
function countdown() {
today = new Date()
days = Math.floor((the_day-today)/(24*60*60*1000))
hours = Math.floor(((the_day-today)%(24*60*60*1000))/(60*60*1000))
minutes = Math.floor(((the_day-today)%(24*60*60*1000))/(60*1000))%60
seconds = Math.floor(((the_day-today)%(24*60*60*1000))/1000)%60%60
if((the_day - today) > 0){
document.f.days.value = days+"日"+"と"+hours+"時間"+minutes+"分"+seconds+"秒"
}else{
document.f.days.value = "締め切りました"
}
tid = setTimeout('countdown()', 1000)
}
// -->
<body>
<FORM NAME=f>
<INPUT TYPE=text SIZE=45 NAME=days>
</FORM>
<SCRIPT Language="JavaScript">
countdown();
</SCRIPT>
</body>
以上
ブラウザでの表示「60日と5時間50分18秒」
残り、30日と表示されるべきところが、60日と表示されます。
PCの日付は合ってますし、他の者の環境でも同じ日にちでした。
そこで質問です。
1)試した3種類とも同様の日にちになりました。ということは間違いではなく、何か理由があるのですよね?
2)<days>を、(-30)にすれば数字的には合うのですが、問題ないでしょうか?
days = Math.floor((the_day-today)/(24*60*60*1000))-30
3)「22時締め切り」にしたいのですが、時間の指定は出来ないでしょうか?
初歩以前の質問で申し訳ありませんが、正しい書き方を教えていただければ、嬉しいです。
どうぞよろしくお願い致します。
お礼
うーん似てるけど違うデス。たとえば90分ならその時間から一秒ずつ減っていくようなデジタル時計みたいのなんです。また、スクリーンセーバーではないようです。