JavaScriptでページの更新日時を表示させていますがChromeが協定世界時(グリニッジ平均時)で表示してしまいます。 JSTで表示させる方法がお判りの方、コピー&ペーストですむ位に判りやすくお教えください。 * 使用JavaScript: <script language="JavaScript"> <!-- myModify = document.lastModified; myD = new Date(myModify); myYear = myD.getYear(); myYear4 = (myYear < 2000) ? myYear+1900 : myYear; myMonth = myD.getMonth() + 1; myDate = myD.getDate(); myHours = myD.getHours(); myMinutes = myD.getMinutes(); mySeconds = myD.getSeconds(); myStr = "ご覧頂いているLISTは " + myYear4 + "年" + myMonth + "月" + myDate + "日 " + myHours + "時" + myMinutes + "分" + mySeconds + "秒 更新されたものです。"; document.write( myStr ); // --> </script> 確か一部のブラウザの20年位前迄の古いヴァージョンではこうなると言うウエブ上の記事を読んだことがあります。何かJSTで表示させる方法も書いてあった様な気もするのですが、まさかこう言う事が起きるとは思わなかったのでURLも記録してなく、これに関する記事が見つかりません。 ヘッダ内の記述は関係ないと思いますが確認の必要があるようでしたら、使用ページは次のURLです。 http://www.k3.dion.ne.jp/~avis/list-update.html

補足

皆様!スマートな解決策を御回答を頂き感謝感激です!多くの方に参考になると思います! でも、、、私にはコピペ+αしか能がない(勉強が嫌いだからです)のです。getFullYearに変更する外は実行困難です、、、が1つ思いつきましたが、、、 なお、重要部分のJavascript依存はいけませんが、諸般の事情で一日十数回5秒でも速くUPしなければならず、人手がない(お金がないからです)ためこうなっています。 ご協力ありがとうございました。

Internet Explorer2,002閲覧xmlns="http://www.w3.org/2000/svg">25

ベストアンサー

この回答はいかがでしたか? リアクションしてみよう

ThanksImg質問者からのお礼コメント

補足説明に書いたような事情ですが、ご指摘を受けてgetFullYear()に変更する際、削除部分に"場合分+計算"がある事に気付きました。Chrome用には"if(strUA.indexOf..."でUTCである旨の表示を出していました。この2つを合わせればどうにかなりそうです。ページに取付けて実験中です。 月末の日付はくどくどしい記述で解決した積りですが多少怪しいです、、、 スマートではない解決ですが私にはふさわしいかと。 ありがとうございました

お礼日時:2013/3/8 13:24

その他の回答(1件)

原因はrishorusさんが説明してくださっているので私からは代替案を一つ。 Last-Modifiedヘッダがサーバ依存なので、サーバサイドスクリプトで解決するのがスマートだと思います。 例えば、mod_rewrite で既存HTMLファイルがPHPスクリプトを通すように設定してPHPで Last-Modified を出力する方法があります。 ファイルの更新日時はちょっとした上書き更新でも変わってしまうものなので、HTMLファイルに更新日時を書くのがベストだとは思いますが、少ない手まで解決するならこの方法もありかもしれません。 # Re: a_a_s_o_u_k_a_iさん