
JavaScriptで一定時間ごとにページの自動リロードを行う
2019年一発目の記事投稿です。今年も当サイトのオウンドメディアをよろしくお願いいたします。ありがたいことに新年早々、コーディング作業に追われているところで、その時に使えそうなものをメモしておきたいと思います。今回はタイトルの通りなのですが、ページの自動リロードを一定時間ごとに行うものです。最近ではスポーツのリアルタイム実況サイトなどでよく見かける機能ですね。
コーディング作業中は基本的にGulpでいろんなタスクを走らせており、その中でもファイル更新のタイミングでローカルサーバーと連携したページの自動リロードなどを使っています。(参考記事「Gulp + Browsersyncを使ったブラウザ自動リロードでコーディング効率化を目指す」)
これも大変便利なのですが、使っているうちにメモリ消費量がかなり増えてきて、だんだんPCの動作が重たくなってくることもしばしばあります。。特に開発専用のPCではなく、出先で作業する場合などはあまりメモリを積んだPCでない場合もあるので、ストレスに感じていました。
とはいえ、いちいちブラウザのリロードを行うのも面倒、、ということで、JavaScriptでタイマーを設定したページの自動リロードを行うスクリプトを入れてみました。と言っても数行のコードで実装できてしまいます。
【javascript】
いかがでしょうか、このようにコーディング効率化目的で使うのもいいですし、実際に自動リロード機能として実装する時にも使えるのではないでしょうか。 (参考にさせて頂いたサイト) ブラウザを自動的にリロードするいくつかの方法
const timer = 60000 // ミリ秒で間隔の時間を指定
window.addEventListener('load',function(){
setInterval('location.reload()',timer);
});
「setInterval」は一定時間ごとに実行させる関数です。引数に実行させる関数と、間隔の時間をミリ秒で指定します。ただし、ページがロードされたイベントで実行させているため、実際には一定時間経過後に実行させる関数の「setTimeout」を使っても同じようになります。タイマーの時間は変数で保持させても、直接引数に指定してもどちらでもOKです。
ちなみに他のサイトにもあった情報によると、下記のHTMLのメタタグでも自動リロードが設定できるようですね。リロードまでの秒数を指定し、こちらではリダイレクト先のURLも直接指定できます。ただし、デバッグ目的でHTMLを編集するのはワークフロー上あまりよろしくないのでしょうか、、
<meta http-equiv="refresh" content="[秒数]; URL=[リダイレクトURL]">
いかがでしょうか、このようにコーディング効率化目的で使うのもいいですし、実際に自動リロード機能として実装する時にも使えるのではないでしょうか。 (参考にさせて頂いたサイト) ブラウザを自動的にリロードするいくつかの方法
categories
- WordPress(61)
- JavaScript(49)
- Vue.js(48)
- CSS(46)
- jQuery(34)
- Nuxt.js(22)
- Sass(21)
- Gulp(17)
- webpack(16)
- PHP(14)
- HTML(14)
- GSAP(11)
- React(10)
- Vite(9)
- Pug(9)
- Laravel(8)
- Cordova(8)
- Linux(7)
- Next.js(6)
- Apache(5)
- Shopify(4)
- REST API(4)
- Node.js(4)
- Smarty(3)
- Git(3)
- JSON(3)
- その他プログラミング(3)
- Google Apps API(3)
- Bootstrap(3)
- 環境構築・システム(3)
- TypeScript(2)
- EJS(2)
- RMS(2)
- Docker(2)
- Instagram API(2)
- Excel VBA(2)
- SVG(1)
- Dart(1)
- ECカートASP(1)
- Markdown(1)
- AMP(1)
- Nginx(1)
- XML(1)
- shellscript(1)
- Ruby(1)
- MySQL(1)