中小企業の働き方改革をサポート>>

ホームページの最終更新日を
『最終更新日 2005年○月×日 12:00』
のように表示させるようJavaScriptを下記の様に書いてみました。

<script language="JavaScript">
<!--
now = new Date(document.lastModified);
document.write("最終更新日 ",now.getYear(),"年",now.getMonth()+1,"月",now.getDate(),"日",now.getHours(),"時",now.getMinutes(),"分");
//-->
</script>

これでもあっているのでしょうか?

いろんなサイトを参考に見たのですが、手書きのところや、
document.write("Last Update:"document.lastModified)
というところばかりでした。
また、あるページでは、
document.write("Last updated: ", document.lastModified, "<BR>");
と書かれているのですが、アクセス時間が表示されるようで更新すると変わってしまうところや
いろいろな条件が書いてあり、複雑なものもありました。

はじめに書いたスクリプトでも、ちゃんと動くと思うのですが、皆さんのアドバイスをいただきたく、質問させていただきました。
よろしくお願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

細かいことですが、now.getYear() は now.getFullYear() に直しましょう。


now.getYear() はブラウザにより挙動が異なります。
(例えば Firefox や Opera では2005年ではなく105年と表示されます。)

ただし、ブラウザによっては
new Date(document.lastModified)
の部分がうまく動かない可能性があります。

document.lastModified の値の書式はブラウザごとに違うので、こっちの方に関しては100%確実な方法はありません。
    • good
    • 0
この回答へのお礼

UKYさん、こんばんは。
参考にしている本に注意書きがありました。
JavaScript1.3からgetFullYear()が追加されているようですね。
しかし、対応していないブラウザも多いとか。
検討した結果、if文を使うことにしました。
アドバイス、どうもありがとうございました。m(_ _=)m

お礼日時:2005/10/08 17:25

>アクセス時間が表示されるようで更新すると変わってしまう


動的に作成されるページ(今の場合ちょっと関係ないかな?)とか
静的ページでもサーバーによってそのように動作するものがあります。
    • good
    • 0
この回答へのお礼

BLUEPIXYさん、アドバイスありがとうございました。

お礼日時:2005/10/07 18:34

今テストしたら、ご希望通りの表示になりました。


よって正解ではあります。
まぁ、細かい事を言えば"日"を"日 "にすると見やすいかな?


>ちゃんと動くと思うのですが
って、ご自分のローカル環境でテストはしたのですか?

ご自分のローカルの環境でテストして、ダメだったらエラーメッセージを書いて質問する、方が質問者さんのためになると思います。
    • good
    • 0
この回答へのお礼

frisk_blue_loveさん、こんばんは。
ローカル環境(IEで開いただけですが)でテストした際は、エラーは出ず、作動していました。
ただ、質問にも書かせていただきましたが、
document.write("Last updated: ", document.lastModified, "<BR>");
と書かれていても、システムデータが表示されるというサイトを見たもので、少し不安になり質問させていただきました。

確認、及びアドバイスしていただき、ありがとうございました。

お礼日時:2005/10/07 18:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング