column

ITコラム

mv11416

プログラミングノウハウ

2018.08.07

jQuery【off】offメソッドの使い方

jQuery では、on メソッドと対になるメソッドとして off メソッドがあり、on メソッドで紐付けたイベントハンドラを削除する際に使用します。
今回は、jQuery の off メソッドの使い方を解説いたします。
 

※イベントハンドラとは、イベントが発生した時に呼び出される処理のことです。

なお、未経験からITエンジニアへの就職に興味がある方や未経験からプログラミングを効率よく学びたいと考えている方は、就職率98.3%で受講料無料のプログラミングスクールプログラマカレッジもおすすめです。

1. off メソッド

 
off メソッドは、イベント処理に関して、on メソッドによってイベント発生に紐付いたイベントハンドラを削除するために使用します。

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

$(セレクタ).off( events [, selector ] [, handler ( eventObject ) ] );

$(セレクタ).off( events-map [, selector ] );

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

.off( events [, selector] [, handler(eventObject)] )
events
「 click 」、「 keydown.myPlugin 」、「 .myPlugin 」などのイベント名、または任意に定義したカスタムイベント名の文字列を指定

複数のイベントを指定することも可能

selector
on メソッドによってイベントを紐付けたセレクタと同じセレクタを指定
 
handler(eventObject)
紐付けた関数を指定するか、「 false 」を指定

「 false 」を指定すると、単に false を返すだけの関数が自動的に紐付けられる

 

.off( events-map [, selector] ) 
events-map
マップ値と組み合わせて 削除するイベントハンドラを指定

キーには、「 click 」、「 keydown.myPlugin 」、「 .myPlugin 」などのイベント名、又は任意に定義したカスタムイベント名の文字列を指定
複数のイベントを指定することも可能

値には、事前に紐付けられた関数を指定

selector
on メソッドの対象となるセレクタと同じセレクタを指定
 
data
on メソッドによってイベントを紐付けたセレクタと同じセレクタを指定
 

▲目次へ戻る

 

2. off メソッドの使用方法

 
現在日時を表示するボタンに関して、off メソッドを使用してクリック時の動作を制御します。
off ボタンをクリックする前と後で 現在日時 ボタンをクリックしてみて下さい。

 

 

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

<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script type="text/javascript">
$(function() {
  $("#btn1").on("click", function() {
    $("#dat").html(new Date());
  });
});
$(function() {
  $("#btn2").on("click", function() {
    $("#dat").html("");
    $("#btn1").off();
  });
});
</script>

<div style="background-color : #CCC; padding : 20px 20px 10px;">
  <div style="display:inline-flex; align-items:center;">
    <input type="button" id="btn1" value="現在日時">
    <div id="dat"></div>
  </div>
 
  <input type="button" id="btn2" value=" off ">  
</div>

off メソッドは on メソッドで指定したイベントハンドラを削除するメソッドですので、必ず on メソッドと共に使用します。

次のように、on メソッドの対象となっているセレクタを指定して off メソッドを呼び出します。

$("#btn1").on("click", function() {...});

$("#btn1").off;

▲目次へ戻る

3. まとめ

jQueryのoffメソッドについて、いかがでしたでしょうか。

「Webプログラマになりたいけど、独力では限界がある」と感じている方には、「プログラマカレッジ」がおすすめです。
プログラマカレッジ」は本気でプログラマを目指す方のための、就職支援付き、受講料無料のプログラミングスクールです。

今回ご紹介した「jQuery」を含む豊富なカリキュラムで、IT初心者からWebプログラマとして就職するまで、プロが完全にサポートします。
本気でプログラマとして就職・転職したいという方は、一度のぞいてみてはいかがでしょうか。

→ 就職支援付き無料プログラミングスクール「プログラマカレッジ」

▲目次へ戻る

無料説明会

SHARE

最新記事

無料説明会に参加してみる

INTERNOUS,inc. All rights reserved.

無料オンライン説明会へ