- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:リロードするたびに表示が変わるJavaScript)
リロードするたびに表示が変わるJavaScriptに関する問題
このQ&Aのポイント
- JavaScriptを使用して、ページを訪れるたびに表示が変わるように設定したい。しかし、しばらく正常に動作していたが、突然表示内容が変わらなくなってしまった。
- ソースコードには変更を加えておらず、ファイルの上書きも行っていない。サンプル元のページも同様にリロードしても表示が変わらなくなっている。
- この問題の原因が何なのか理解できず、何もしていないのに急にこの状態になってしまった。詳しい方に助言をいただきたい。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
サンプルのソースを見ましたところ、Cookieの有効期限を 1週間後に設定する箇所がありますが、 そこがおかしい為、Cookie が保存されずにデフォルト( 0番目 )の内容が常に表示されている ようです。 <該当箇所> nowDate.setMonth(nowDate.getDate()+7) //1週間後にクッキー消滅 nowDate.getDate()+7 で今日の日にちに 7を足して 1週間後の日にちを算出してありますが、 その値を nowDate.setMonth により「 月 」に設定してあります・・・。 今日は 12月1日なので 1+7=8 が月に設定されて 9月1日(※)が有効期限となり、 今日から見るとすでに期限切れ(!)ということで Cookie が保存されないのだと思います。 ※ 「 月 」は内部的に 0 が 1月、1 が 2月、・・・ と扱われているので 8 は 9月になります。
お礼
ご回答をありがとうございます。 原因はよ~くわかりました。 修正方法がまだよくわからないのですが・・・ なんとかがんばってみます!