ITコラム

jquery resize

jQuery

2018.10.10

jQuery【 resize 】画面のリサイズイベント

jQuery の resize メソッドを使うと、画面のサイズが変わった際の処理を実装することができます。
今回は、jQuery の resize メソッドの使用方法について紹介します。

目次

1. resize メソッド
2. 画面をリサイズした際の処理
3. ロード時とリサイズ時の処理

1. resize メソッド

 
resize メソッドは、画面のリサイズを行った際にイベントを発生させるメソッドです。

resize メソッドは、引数によって 3 通りの記述方法があります。

$(セレクタ).resize( );

$(セレクタ).resize( handler( eventObject ) );

$(セレクタ).resize( [ eventData ], handler( eventObject ) );

引数なしの「.resize( )」は、「.trigger("resize")」の省略形です。
(trigger メソッドの使用方法についてはjQuery【 trigger 】手動でイベントを発生させる trigger メソッドをご参照下さい。)

また、「.resize( handler( eventObject ) )」及び「.resize( [ eventData ], handler( eventObject ) )」は、「on( "resize", handler )」の省略形です。
(on メソッドの使用方法についてはjQuery【 on 】on メソッドの使い方をご参照下さい。)

resize メソッドの引数の内容は、それぞれ以下の通りです。

.resize( handler( eventObject ) )
handler( eventObject )
リサイズ時に実行する処理を関数として指定

 

.resize( [ eventData ], handler( eventObject ) )
[ eventData ]
イベントハンドラに渡すデータをマップ値で指定

handler( eventObject )
リサイズ時に実行する処理を関数として指定

▲目次へ戻る

 

2. 画面をリサイズした際の処理

 
resize メソッドを使用して、画面をリサイズした際の処理を実装します。
このページのウィンドウサイズを色々と変えてみて下さい。

縦(px): 
横(px): 

 
上のサンプルのソースコードは次の通りです。

<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script type="text/javascript">
<!--
$(function(){
  $(window).resize(function() {
    $("#out1").html($(window).height());
    $("#out2").html($(window).width());
  });
});
//-->
</script>

<div style="background-color:#CCC; padding:20px;">
  縦(px): <span id="out1"></span>
  横(px): <span id="out2"></span>
</div>

$(window).height()」及び「$(window).width()」でブラウザの縦幅と横幅のサイズが取得できます。

▲目次へ戻る

 

3. ロード時とリサイズ時の処理

 
リサイズ時と共に 画面を読み込んだ際にもイベントを発生させる場合は、次のようなソースコードになります。

<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script type="text/javascript">
<!--
$(function(){
  $(window).on("load resize", function() {

    $("#out3").html($(window).height());
    $("#out4").html($(window).width());
  });
});
//-->
</script>

<div style="background-color:#CCC; padding:20px;">
  縦(px): <span id="out3"></span>
  横(px): <span id="out4"></span>
</div>

$(window).on("load resize", function() {...});」のように、load メソッドと resize メソッドの両方を記述すると、リサイズ時と共にページが読み込まれた際のサイズも表示されます。

▲目次へ戻る

SHARE

最新記事

無料相談する

INTERNOUS,inc. All rights reserved.