Count Down

Description:

ワールドカップの開催日など、特別な日までのカウントダウンを行います。

指定日前、指定日当日、指定日後の3つのパターンのメッセージを表示します。

Demo:

Source:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>


</head>

<body>


<script language="JavaScript" type="text/javascript">
<!--
//2002年5月31日に設定する (2002年W杯開催日)
var mday_sety = 2002;  //指定日の年(現在は2002年にセット)
var mday_setm = 5;     //指定日の月(現在は5月にセット) 
var mday_setd = 31;     //指定日の日(現在は31日にセット)

var mday_now   = new Date();
var mday_cdate = new Date(mday_sety, mday_setm-1, mday_setd);  
var mday_countd= Math.ceil((mday_cdate.getTime() - mday_now.getTime())/(24*60*60*1000));

//表示するメッセージを設定
if(mday_countd == 0) {
  var mday_msg = "<font color='#ff0000'>ワールドカップ開幕!</font>";
} else if(mday_countd > 0) {
  var mday_msg = "2002年ワールドカップの開催まであと" +mday_countd+ "日です。";
} else if(mday_countd < 0) {
  var mday_msg = "2002年ワールドカップの開催から" +(mday_countd*-1)+ "日が過ぎました。";
}
document.write(mday_msg);

//-->
</script>


</body>
</html>

Advice:

Arrangement:

毎年同じ日を祝うようにする [デモ]

上記のスクリプトは決まった年月日を祝うもので、毎年一回記念日(例えば誕生日)があるような場合には 不向きです。毎年決まった日を祝うようにするには、スクリプトを以下のように書き換えます。

var mday_setm = 12;     //指定日の月(現在は12月にセット) 
var mday_setd = 25;     //指定日の日(現在は25日にセット)

var mday_now  = new Date();
var mday_judge = (mday_setm == (mday_now.getMonth()+1) &&  mday_setd == mday_now.getDate());
if(!mday_judge) {
 var mday_cdate = new Date(mday_now.getYear() ,mday_setm-1, mday_setd);
 mday_cdate = ((mday_now.getTime() - mday_cdate.getTime())/(24*60*60*1000) > 0) ?
               new Date(mday_now.getYear()+1 ,mday_setm-1, mday_setd) : mday_cdate;
 var mday_countd = Math.ceil((mday_cdate.getTime() - mday_now.getTime())/(24*60*60*1000));
}

if(mday_judge) {
  var mday_msg = "メリークリスマス♪ 今日はクリスマスです。"; //当日のメッセージ
} else {
  var mday_msg = "次のメリークリスマスまであと" +mday_countd+ "日です。"; //次の指定日までのメッセージ
}
document.write(mday_msg);

Browser:

Internet Explorer3.0以上
Netscape Navigator2.0以上