JavaScript - リロードについて考える
こんばんは
少し空いてしまいました...
が、反省してもこればかりは仕方ないので割り切って続けていきます。
今日はタイトル通り
ページのリロードについて考えます。
参考
基本的にはこちらを参考に
http://www.htmq.com/js/
本題
普通に考えると...
location.reload();
// 5秒に一回リロード
setTimeout("location.reload()",5000);
これですよね。
setTimeoutと組み合わせて定期的にリロードもできちゃいます。
一般的なブラウザの[更新]ボタンを押したときと同じ動作です。
一番分かりやすい、全部これでいいよと思ってしまいます。
同じlocationオブジェクトでこんな感じでも実装できますね。
// 指定のURLへページ遷移
location.href = "URL"
// location.hrefは現在のページのURLを取得できるので、こんな書き方もOK?
location.href = location.href;
// 指定したURLへページ遷移
location.replace("URL");
replaceとhrefは一体どこが違うのでしょうか?
最も大きな相違点は、URL情報がブラウザの履歴に残るかどうかという点です。ここで、もう一度replacehrefの記述を見てみましょう。
replaceメソッドを使った場合にはブラウザ履歴に残らないため、前のWebページに「戻る」ことができません。反対にhrefメソッドを使った場合はブラウザ履歴が残るので、前のページに戻ることができます。
ここは注意ですね。
ただし今回はリロードに焦点を当てているので頭の片隅に残すことにします。
明日へ
かなり薄いですが、最近眠気がすごいので
明日続きを書きたいと思います。
非同期通信でデータを更新したときに一部だけリロードしたい