「最終更新日」では該当のページの最後に更新した時刻を表示する方法を紹介しましたが、
他のページの更新状況を表示することはできません。
このような場合、通常は CGI、 時には Java を使用します。
然し、デメリットもないわけではありません。
^^;
※ CGI で作成すれば大抵の場合は問題はないと思いますが...
なにしろ「JavaScript Tip集」なもんで... f(^^;
そこで、HTML の一部( ここでは、指定したファイルの最終更新時刻 )を CGI で作成し、
JavaScript でそれを加工して表示するのはどうでしょう。
このための方法としては、 script タグの src属性を利用します。
以下はその例です。
<script language="JavaScript1.1"><!-- _flist = new Array(); // 更新情報の配列 // 西暦4桁年取出し関数 function getFullYear(d){ var y=d.getFullYear?d.getFullYear():d.getYear(); var oy=y; if(y<100) y+=1900; if(y<1980) y+=100; if(oy!=y) d.setYear(y); return y; } // 最終更新日情報生成関数 function _Flist(f,y,m,d,t){ this.filename=f; if(d==0) this.lastmodified=null; else this.lastmodified=new Date(y,m,d); this.title=t; return this; } // --></script> <script language="JavaScript1.1" src="LModify.cgi?t=t&f=A.htm,B.htm,C.htm" ></script> </head> <body ... > : <script language="JavaScript1.1"><!-- // 更新情報を HTML で出力 var s=''; for(var i=0; i<_flist.length; i++){ var o=_flist[i], m=o.lastmodified; if(m) s+='<p><code>' + getFullYear(m)+'年' + (m.getMonth()+1)+'月' + m.getDate()+'日 ' + '<\/code>更新' + '<a href="'+o.filename+'">'+o.title+'<\/a><\/p>'; else s+='<p>'+o.filename+'は削除されました<\/p>'; } document.write(s); // --></script>
この文字の部分は必要に応じて修正します。
2番目の SCRIPTタグで指定している LModify.cgi は
指定したファイルに関する更新情報を取り出し、JavaScript の形式で出力する
Perl( Perl5 )で記述された CGI です。
呼出形式に関してはこちらを参照してください。
因みに CGI のソースはこちら。
このスクリプトでは取り出した更新情報は _flist 配列に格納されますので、
BODY部で適当に加工して document.write すれば表示できます。
使用例
サンプルはこちらです。
注意事項