本記事では、jQueryで要素(コンテンツ)の横幅・高さを取得する方法について解説しています。
別記事にてJavaScriptで要素(コンテンツ)の横幅・高さを取得する方法についてまとめているので、興味のある方はご覧ください。
JavaScriptの学習におすすめ参考書
改訂3版JavaScript本格入門 ~モダンスタイルによる基礎から現場での応用まで
先輩くん
10万部突破したJavaScriptの本が大幅増補改訂し7年ぶりに発売されたよ!
後輩ちゃん
最新の基本文法から、開発に欠かせない応用トピックまで学ぶことが出来るよ!
綺麗なコードが書けるようになる!
リーダブルコード-より良いコードを書くためのシンプルで実践的なテクニック
先輩くん
より良いコードを書きたい人におすすめの本だよ!
後輩ちゃん
10以上前の書籍ですが、内容は今でも役に立つものばかりです!
Contents
サンプルコード
以降の解説では、下記のサンプルコードを使用します。お手元のPCで実際に実行結果を確認したり数値をいじってみたい人はコピペしてご使用ください。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<style>
#rect {
width: 200px;
height: 100px;
border: 10px solid #000;
padding: 20px;
margin: 30px;
background-color: fuchsia;
}
</style>
</head>
<body>
<div id="rect"></div>
</body>
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script src="index.js"></script>
</html>
要素の横幅・高さを取得
純粋な要素の横幅を取得したい場合はwidthメソッドを、高さはheightメソッドを使用します。
console.log("横幅:" + $("#rect").width()); // => 横幅:200
console.log("高さ:" + $("#rect").height()); // => 高さ:100
要素+paddingの横幅・高さを取得
要素+paddingの横幅を取得したい場合はinnerWidthメソッドを、要素+paddingの高さはinnerHeightメソッドを使用します。
console.log("横幅:" + $("#rect").innerWidth()); // => 横幅:240
console.log("高さ:" + $("#rect").innerHeight()); // => 高さ:140
要素+padding+borderの横幅・高さを取得
要素+padding+borderの横幅を取得したい場合はouterWidthメソッドを、要素+padding+borderの高さはouterHeightメソッドを使用します。
console.log("横幅:" + $("#rect").outerWidth()); // => 横幅:260
console.log("高さ:" + $("#rect").outerHeight()); // => 高さ:160
要素+padding+border+marginの横幅・高さを取得
要素+padding+border+marginの横幅/高さを取得したい場合は、先ほど紹介したouterWidthメソッド/outerHeightメソッドを使用しますが、異なる点は引数にtrueをセットします。
console.log("横幅:" + $("#rect").outerWidth(true)); // => 横幅:320
console.log("高さ:" + $("#rect").outerHeight(true)); // => 高さ:220