JavaScriptでウィンドウサイズを取得する方法を現役エンジニアが解説【初心者向け】

初心者向けにJavaScriptでウィンドウサイズを取得する方法について解説しています。JavaScriptではディスプレイの画面サイズやウィンドウのサイズ、要素のサイズなどを取得することが出来ます。画面のサイズやスクロールバーを含まない、あるいは含んだウィンドウサイズの取得について解説します。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

JavaScriptでウィンドウサイズを取得する方法について解説します。

実際のコードをもとに解説していきますので、理解を深めていきましょう。

また、入門向けのJavaSriptを学習できるサイトも紹介しているので、合わせてご覧ください。

 

なお本記事は、オンラインブートキャンプ フロントエンドコース(JavaScript・jQuery講座)の内容をもとにしています。

 

 

田島悠介

今回は、JavaScriptに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

JavaScriptでウィンドウサイズを取得する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

ウィンドウサイズを取得する方法

ブラウザウィンドウ全体(横)の外周を取得する。

window.outerWidth

ブラウザウィンドウ全体(縦)の外周を取得する。

window.outerHeight

 

ウィンドウに関する他の値の取得方法

ウィンドウ全体の幅を取得する以外にもいろいろな幅を取得する方法(関数)があります。

ブラウザ内の表示域を取得する。
 

window.innerWidth // 横幅

window.innerHeight // 縦幅

 

ドキュメント全体の幅を取得する。
 

document.body.clientWidth // 横幅

document.body.clientHeight // 縦幅

 

ドキュメントの表示領域を取得する。
 

document.documentElement.clientWidth // 横幅

document.documentElement.clientHeight // 縦幅

 

[PR] JavaScript・jQueryで挫折しない学習方法を動画で公開中

実際に書いてみよう

<p>ウィンドウサイズ外周:<span id="outWinSize"></span></p>
<p>ウィンドウサイズ表示域:<span id="innWinSize"></span></p>
<script type="text/javascript">
//ウィンドウサイズ(外周)の取得
getOuterWindowSize();
//ウィンドウサイズ(表示域)の取得
getInnerWindowSize();

//ウィンドウサイズ(外周)の取得
function getWindowSize() {
var outW
var outH
var outWindow;
outW = window.outerWidth;
outH = window.outerHeight;

outWindow = "横幅 = " + outW + " / 高さ = " + outH;

document.getElementById("outWinSize").innerHTML = outWindow;
}

//ウィンドウサイズ(表示域)の取得
function getWindowSize() {
var innW
var innH
var innWindow;
innW = window.innerWidth;
innH = window.innerHeight;

innWindow = "横幅 = " + innW + " / 高さ = " + innH;

document.getElementById("innWinSize").innerHTML = innWindow;
}
</script>

 

筆者プロフィール

水野大輝(みずのたいき)
2014年より、某物流会社のシステム開発担当として入社。

未経験ながら、社内システム保守~新規受注システム開発まで携わり、JavaScript Ruby on Rails PostgreSQLなどの経験を積む。
現在も、開発案件に携わりながら、日々勉強中。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

また、TechAcademyではJavaScriptを使ってWebサービスを公開できるオンラインブートキャンプ フロントエンドコース(JavaScript・jQuery講座)を開催しています。

プログラミングの初心者でも受講可能です。Webサイトの表現の幅を広げたいという方はぜひご覧ください。

また、現役エンジニアから学べる無料のプログラミング体験会も実施しているので、ぜひ参加してみてください。