速報

Apache HTTP ServerのHTTP/2に認証不要RCE|2.4.71更新と構成別の確認

CATEGORY

【jQuery】読み込み時、リサイズ完了時に取得したウィンドウサイズに応じて処理を実行する

※本ページのリンクにはプロモーションが含まれています。

読み込み時、リサイズ完了時に取得したウィンドウサイズに応じて処理を実行する

目次

jQueryで読み込み時とリサイズ完了時に、ウィンドウサイズに応じて処理を実行する方法のご紹介になります。

本記事の内容

  • ウィンドウサイズを取得する
  • 読み込み時、リサイズ時のイベントを取得する
  • ウィンドウサイズに応じて処理を実行する

では解説していきます。

スポンサーリンク

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

ウィンドウサイズは以下の記述で取得します。

JS

$(window).width();

読み込み時とリサイズ時のイベントを取得する

on()メソッドで読み込み時とリサイズ時のイベントを取得します。

JS

$(window).on('load resize', function() {
  //ここに読み込み時とリサイズ時の実行したい処理を記述する
});

スポンサーリンク

読み込み時とリサイズ時にウィンドウサイズを取得して処理を実行する

on()、width()を使って処理を記述します。

JS

$(window).on('load resize', function() {

  //ウィンドウサイズを取得する
  var w = $(window).width();

  //ウィンドウサイズが768より大きい場合の処理
  if( w > 768 ) {
    console.log('ウィンドウサイズは768より大きいです。');

  //ウィンドウサイズが768以下の場合の処理
  } else {
    console.log('ウィンドウサイズは768以下です。');
  }
});

上記を実行するとおわかりいただけると思いますが、リサイズ時のイベントをすべて取得して処理を実行しているだけなので、コンソールに大量の文字列が表示されます。リサイズ完了時のみ処理が実行されるようにスクリプトを修正します。

読み込み時、リサイズ完了時に取得したウィンドウサイズに応じて処理を実行する

以下、リサイズ完了時のみ処理が実行されるように修正したスクリプトになります。

Demo

JS

$(document).ready(function() {
  var checkResize;
  $(window).on('load resize', function() {
      clearTimeout( checkResize );
      checkResize = setTimeout( resizing, 100 );
  });

  //リサイズ完了時に実行する処理
  function resizing() {
    var w = $(window).width();

    //ウィンドウサイズが768より大きい場合の処理
    if( w > 768 ) {
      console.log('ウィンドウサイズは768より大きいです。');

    //ウィンドウサイズが768以下の場合の処理
    } else {
      console.log('ウィンドウサイズは768以下です。');
    }
  }
});

setTimeoutは2つ目の引数にしてした時間に1つ目の引数に設定した処理を予約する関数です。clearTimeoutはsetTimeoutで予約した処理をキャンセルします。ウィンドウサイズがリサイズされた際にcheckResizeの値に新しいsetTimeoutが予約されるため、連続して処理が実行されないようになります。

スポンサーリンク

まとめ

以上、jQueryで読み込み時、リサイズ完了時に取得したウィンドウサイズに応じて処理を実行する方法のご紹介でした!

色々な場面で使えるスクリプトですので、ご活用いただければ幸いです。

この記事を書いた人

Ryohei

Webエンジニア / アプリ開発者 / 技術ブログ運営者

福岡のWeb制作会社に勤務するWebエンジニアです。10年以上にわたりWeb制作・開発に携わり、ヒアリングや進行管理から、コーディング、CMSの構築、システム開発、サーバーの構築・保守・運用まで、Webサイト制作の工程を幅広く担当しています。Webサイトは、これまでに100以上の構築・保守を手がけてきました。

個人でもWebサイトの制作・改修やWebアプリの開発・運用を行い、AIを活用した開発にも取り組んでいます。近年はWebセキュリティにも注力しています。

2015年から技術メディア「Into the Program」を運営し、実務や開発で得た知識をもとに、プログラミングの実装方法やWebサイトの運用・セキュリティ情報を発信しています。

主な分野
Webサイト構築・保守・運用 / HTML/CSS / JavaScript / PHP / WordPress / サーバー構築・保守・運用 / アプリ開発 / セキュリティ対策
資格・試験合格
情報セキュリティマネジメント試験
基本情報技術者試験
AWS認定ソリューションアーキテクト アソシエイト
PHP8技術者認定ウィザード
メディア運営
2015年〜

記事の作成・更新について

セキュリティ記事は、ベンダーの公式アドバイザリやCVE・JVNなどの一次情報を参照し、出典と情報確認日を記載します。実環境での検証を行った場合は、その環境と確認範囲を明示します。重要な追加情報や誤りを把握した場合は、内容を確認して追記・訂正します。

関連する記事

おすすめの書籍

キーワードから探す

スポンサーリンク