event.Ziel.id VS-Ereignis.currentTarget.id VS diese.id
Habe ich diesen Beispielcode unten:
HTML:
<button id = '33' class = "clickme">Click here</button>
JS:
$(document).on("click",".clickme",function(event){
var eti = event.target.id;
var eci = event.currentTarget.id;
var ti = this.id;
alert ("1: " + eti + " 2: " + eci + " 3: " + ti);
}
Diese 3 Ereignisse, Warnungen den gleichen Wert, und ich dachte, dass es auch spielt die gleiche Rolle, aber nicht in diesem link, den ich gefunden SO: jquery, function(event) event.Ziel.id ist leer beim Klick auf die verlinkten text.
Nun meine Frage:
1.) Was ist die Unterschied zwischen der Verwendung: event.target.id
, event.currentTarget.id
und this.id
?
2.) Wann sollte ich verwenden event.target.id
, event.currentTarget.id
und this.id
?
3.) Und die funktioniert besser, unter diesen drei?
Hat jemand eine Idee und Erklärung, warum?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen, dieses Beispiel
Veranstaltung.Ziel ist das, was das Ereignis auslöst.
ex: wenn Sie auf
p
event.target
wirdp
aberevent.currentTarget
wirdp
wenncallback
vonp
werden genanntevent.currentTarget
wirdmaindiv
wenncallback
aufgerufen werden, Ursache von Ereignis-bubbling.Sehen für details
https://developer.mozilla.org/en-US/docs/Web/API/Event/Comparison_of_Event_Targets
Hier ist eine gleiche Frage, die ich denke, dass man diese
Unterschied zwischen e.Ziel und e.currentTarget
event.target.id
undthis.id
sind die gleichen, in den ersten ein, auf das Sie zugreifen das Ziel, aus dem Ereignis-Objekt in den zweiten, auf den Sie zugreifen es durch jquery-Objekt.event.currentTarget.id
Als pro es ist Dokumentation.
In JavaScript, events bubble. Dies bedeutet, dass ein Ereignis breitet sich durch die Vorfahren der element das Ereignis ausgelöst auf.
Sie können dies überprüfen, fiddle und probieren Sie verschiedene event-Eigenschaften.