Heim  >  Artikel  >  Web-Frontend  >  Die Nutzungsunterschiede zwischen „delegate“ und „on“ in jQuery und ihre Beispiele

Die Nutzungsunterschiede zwischen „delegate“ und „on“ in jQuery und ihre Beispiele

巴扎黑
巴扎黑Original
2017-06-25 10:40:23954Durchsuche

jQueryIn 1.7 wurde .delegate() durch .on() ersetzt. Das Folgende ist ein Beispiel für die Verwendung und den Unterschied zwischen „delegate“ und „on“ in jQuery

In jQuery1.7.delegate() wurde durch .on() ersetzt. Für frühere Versionen war es immer noch die effizienteste Methode zur Verwendung der Ereignis-Delegierung.
Bei der Ereignisbindung und -delegierung sind „delegate()“ und „on“ im Allgemeinen gleichwertig.

.delegate() fügt einen oder mehrere Ereignishandler zum angegebenen Element (einem untergeordneten Element des ausgewählten Elements) hinzu und gibt die Funktionen an, die ausgeführt werden sollen, wenn diese Ereignisse auftreten.

Der Code lautet wie folgt:

// jQuery 1.4.3+
$( elements ).delegate( selector, events, data, handler ); // jQuery 1.7+
$( elements ).on( events, [selector], data, handler );

Zum Beispiel: .delegate() Code:


Der Code lautet wie folgt:

$("table").delegate("td","click",function(){

alert("hello");
}); 🎜>
.on()-Code:


Der Code lautet wie folgt:

$("table").on("click", "td", function () {

alert("hi ");


PS: Der Unterschied zwischen den beiden ist, dass die Reihenfolge der Selektoren und Ereignisse unterschiedlich ist Das vom Delegaten ausgewählte Element und die On-Methoden müssen „legale“ untergeordnete Elemente sein. Der

-Code lautet beispielsweise wie folgt:

$("table").delegate("button","click",function(){...}) ;

$ ("table").on("click", "p", function(){...});

funktioniert nicht, da unter normalen Umständen Tabellenunterelemente vorhanden sind sollte tr sein, td ...

on(events,[selector],[data],fn), der Parameter [selector] ist optional,
ein Selektor

String

für
Filter Nachkommen des Selektorelements von
, das das Ereignis ausgelöst hat. Zum Beispiel: Der Code lautet wie folgt:

$("table").on("click", ".td1", function() {

alert( "hi");

Tabellenunterelemente mit der Klasse td1


filtern und der Delegate-Selektor ist erforderlich.

Das obige ist der detaillierte Inhalt vonDie Nutzungsunterschiede zwischen „delegate“ und „on“ in jQuery und ihre Beispiele. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn