javascript カウントダウンについて
下記のようなjavascript でカウントダウンをしています。
ですが、指定日を過ぎると、00 表示になってしまいます。
これを指定日の指定時間を過ぎたら、-- という表示に変更し、
また、bodyないのタグにidを使って「指定日を過ぎました。」という
表示を出したいのですが、ご教授ねがいます。
<script language="javascript">
<!--
function countdown(year, month, day, hour, minute)
{
Today = new Date();
Todays_Year = Today.getFullYear() - 2000;
Todays_Month = Today.getMonth() + 1;
Todays_Day = Today.getDate();
Todays_Hour = Today.getHours();
Todays_Date = (new Date(Todays_Year, Todays_Month, Todays_Day, Todays_Hour, Today.getMinutes(), Today.getSeconds())).getTime();
Target_Date = (new Date(year, month, day, hour, minute, 00)).getTime();
Time_Left = Math.round((Target_Date - Todays_Date) / 1000);
if(Time_Left < 0)
Time_Left = 0;
days = Math.floor(Time_Left / (60 * 60 * 24));
Time_Left %= (60 * 60 * 24);
hours = Math.floor(Time_Left / (60 * 60));
Time_Left %= (60 * 60);
minutes = Math.floor(Time_Left / 60);
Time_Left %= 60;
seconds = Time_Left;
cDay = document.getElementById("counter_day");
cHour = document.getElementById("counter_hour");
cMin = document.getElementById("counter_min");
cSec = document.getElementById("counter_sec");
cDay.innerHTML = GetFormated(days);
cHour.innerHTML = GetFormated(hours);
cMin.innerHTML = GetFormated(minutes);
cSec.innerHTML = GetFormated(seconds);
//Recursive call, keeps the clock ticking.
setTimeout('countdown(' + year + ',' + month + ',' + day + ',' + hour + ',' + minute + ');', 1000);
}
function GetFormated(i)
{
if(i<10) { return "0"+i; }
return i;
}
//-->
</script>
</head>
<body>
<span id="counter_day"></span>
<span id="counter_hour"></span>
<span id="counter_min"></span>
<span id="counter_sec"></span>
<script language="JavaScript">
<!--
countdown('07,11,05,21,00');
//-->
お礼
さっそくのお返事ありがとうございます。 その流れで出来ました。 お騒がせしました。