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

colmun_main12127

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 メソッドの両方を記述すると、リサイズ時と共にページが読み込まれた際のサイズも表示されます。

▲目次へ戻る

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です