最終更新日
-
0 名前: sakana : 2006/09/09(土) 17:29 ID:O14TONQG
- <script type="text/javascript">
<!--
var LastDate=new Date(document.lastModified); //最終更新日の生成
var L_Year=LastDate.getFullYear(); //4桁西暦を取得
var L_Month=LastDate.getMonth()+1; //月の取得、1月が"0"になるので1を足す
var L_Day=LastDate.getDate(); //日の取得
if(L_Month<10){L_Month="0"+L_Month;} //一桁の場合に前に"0"を付ける
if(L_Day<10){L_Day="0"+L_Day;}
with(document){
write("<span style='font-size:0.8em;color:#752c04;'> LastModified: </span>");
write("<span style='font-size:0.8em;color:#4f4f4f;'>");
write(L_Year+"年"+L_Month+"月"+L_Day+"日");
write("</span>");
}
//-->
上記、最終更新日を自動で更新するようにしたスクリプトですが、ネット上でWEBページをOPENすると 最終更新日が OPENした日付で更新されてしまいます。
ローカルでのファイルの更新の為に利用しようとしていたのですが、スクリプトの間違いを発見することが出来ず、スレッドを建てさせていただきました。
よろしく御願いします。
-
1 名前: Chip : 2006/09/09(土) 17:29 ID:iXTrKUp6
- 「lastModified」で検索してみると、それがあまりアテにできない情報だとわかります。
期待する値が採れないサーバではどうにもできないと思います。
-
2 名前: 牛若 : 2006/09/09(土) 17:29 ID:/.uez2Jn
- スタンドアロンで使う分にはそのコードで問題はないと思いますが。
lastModifiedはサーバ上の最終更新日時を参照しています。サーバの種類または設定によ
っては、正しい値を返さない場合があります。古典的な問題です。
以前は、1970/1/1を返すとかタイムゾーンラグを返すとか、様々な問題が持ち上がり、
結局、lastModifiedはアテにならないという認識が広まっています。
私は手入力で入れています。
-
3 名前: sakana : 2006/09/09(土) 17:29 ID:O14TONQG
- >Chipさん、牛若さん 、素早い対応感謝します。
このたびHPをUPするサーバを変更しましたので、以前は問題がなかったのに 何故?
私では、原因がわからずに困っていました。
サーバの環境に依存する場合が有るのですね、最終更新日の変更は たいした手間もかからないので、これからは手入力で更新するようにします。
御世話になりました。