CGIなどで動的にページを表示する際は、その都度日付を見て「New!」などの表示をすればいいのですが、CGI等でHTMLを静的に生成した場合は、いつまでも「New!」が消えなくなってしまいます。
そこで、JavaScriptを埋め込んで、期限が来たら「New!」を消すことにします。
------------------------
そこで、JavaScriptを埋め込んで、期限が来たら「New!」を消すことにします。
------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<SCRIPT language="JavaScript">
<!--
function getstr() {
var newstr= "<B><FONT color=red>New!</FONT></B>";
thisDay = new Date();
// 下行 CGI等で出力するときに生成日付を埋め込む。
upDay= new Date(2005,4,22); //月は-1してあります
// 下行 日時変換後引き算。Math.ceilは小数点以下切り上げ。
keika = Math.ceil((thisDay.getTime()-upDay.getTime())/(60*60*24*1000));
// この場合は期限切れを3日後に設定
if (keika < 3) { document.write(newstr); }
else {document.write(""); }
}
//-->
</SCRIPT>
<title>投稿新着</title>
</head>
<body>
<p>
<SCRIPT language="JavaScript">
<!--
getstr(); //1箇所だけの場合は、呼び出さず、ここに埋め込んでもOK
//-->
</SCRIPT>
(Newを付ける文章)
</p>
</body>
</html>
--------------------------<HTML>
<HEAD>
<SCRIPT language="JavaScript">
<!--
function getstr() {
var newstr= "<B><FONT color=red>New!</FONT></B>";
thisDay = new Date();
// 下行 CGI等で出力するときに生成日付を埋め込む。
upDay= new Date(2005,4,22); //月は-1してあります
// 下行 日時変換後引き算。Math.ceilは小数点以下切り上げ。
keika = Math.ceil((thisDay.getTime()-upDay.getTime())/(60*60*24*1000));
// この場合は期限切れを3日後に設定
if (keika < 3) { document.write(newstr); }
else {document.write(""); }
}
//-->
</SCRIPT>
<title>投稿新着</title>
</head>
<body>
<p>
<SCRIPT language="JavaScript">
<!--
getstr(); //1箇所だけの場合は、呼び出さず、ここに埋め込んでもOK
//-->
</SCRIPT>
(Newを付ける文章)
</p>
</body>
</html>