English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

jQuery event.delegateTarget 属性

jQueryのイベント

event.delegateTarget属性は、現在のjQueryイベントハンドラが追加された要素を返します。

この属性はon()デリゲートイベントに追加されたメソッドの中で最も役立つ、イベントハンドラを処理する要素の祖先にイベントハンドラを追加するイベントです。例えば、デリゲートポイントでイベントハンドラを識別および削除するために使用できます。

注意:イベントが直接要素にバインドされており、委派が発生していない場合、event.delegateTargetはevent.currentTarget(以下の例を参照してください)。

文法:

event.delegateTarget

どのDIV内のボタンをクリックした場合、DIVの背景色を赤に変更します:

$("div").on("click", "button", function(event){
  $(event.delegateTarget).css("background"-color", "red");
});
テストを見て‹/›

デリゲートが発生したときのdelegateTargetとcurrentTargetの違いを表示します:

$("body").on("click", "button", function(event){
  let dt = event.delegateTarget;
  let ct = event.currentTarget;
  $("p").html("delegateTarget: " + dt.nodeName + "<br>currentTarget: " + ct.nodeName);
});
テストを見て‹/›

直接バインドされたイベントに対して、delegateTargetとcurrentTargetは同じです:

$("button").on("click", function(event){
  let dt = event.delegateTarget;
  let ct = event.currentTarget;
  $("p").html("delegateTarget: " + dt.nodeName + "<br>currentTarget: " + ct.nodeName);
});
テストを見て‹/›

パラメータの値

パラメータ説明
eventこのイベントのパラメータはイベントバインド機能から来ています

jQueryのイベント