In diesem Artikel wird die Verwendung der jQuery-on()-Methode anhand von Beispielen analysiert. Teilen Sie es als Referenz mit allen. Die spezifische Analyse lautet wie folgt:
1. Verwendung der jQuery on()-Methode:
on(events,[selector],[data],fn)
Ereignisse: Ein oder mehrere durch Leerzeichen getrennte Ereignistypen und optionale Namespaces, z. B. „click“ oder „keydown.myPlugin“.
Selektor: Eine Selektorzeichenfolge für die Nachkommen des Filters des Selektorelements, das das Ereignis ausgelöst hat. Wenn der Selektor null ist oder weggelassen wird, wird das Ereignis immer ausgelöst, wenn es das ausgewählte Element erreicht.
data: Wenn ein Ereignis ausgelöst wird, muss event.data an die Event-Handler-Funktion übergeben werden.
fn: Die Funktion, die ausgeführt wird, wenn das Ereignis ausgelöst wird. Der Wert false kann auch als Abkürzung für eine Funktion verwendet werden, die false zurückgibt.
2. Vorteile der jQuery on()-Methode:
1. Bietet eine Methode zur einheitlichen Bindung von Ereignissen
2. Es bietet weiterhin die Vorteile von .delegate(). Natürlich können Sie bei Bedarf auch .bind() direkt verwenden
3. Vergleich mit .bind(), .live(), .delegate():
1. Tatsächlich werden .bind(), .live() und .delegate() alle über .on()
implementiert
jQuery( this.context ).on(types, this.selector, data, fn );
gib dies zurück;
},
Die: Funktion( Typen, fn ) {
jQuery( this.context ).off(types, this.selector || "**", fn );
gib dies zurück;
},
return this.on(types, selector, data, fn );
},
Undelegate: Funktion(Selektor, Typen, Fn) {
// (Namespace) oder (Selektor, Typen [, fn])
return arguments.length === 1 ? this.off( selector, "**" ): this.off(types, selector || "**", fn );
}
3. Verwenden Sie .live() nicht mehr, es wird nicht mehr empfohlen und bringt viele Probleme mit sich
4. .delegate() bietet eine gute Möglichkeit, die Effizienz zu verbessern, und wir können dynamisch hinzugefügten Elementen eine Ereignisbehandlungsmethode hinzufügen.
5. Wir können .on() verwenden, um die oben genannten drei Methoden zu ersetzen
4. Beispiele für die Verwendung der jQuery on()-Methode
1. Binden Sie das Click-Ereignis und verwenden Sie die Methode off(), um die an on() gebundene Methode zu entfernen
4. Benutzerdefinierte Ereignisse binden
5. Daten an Funktion übergeben
$(document).ready(function(){
$("p").on("click", {msg: "You just clicked me!"}, handlerName)
});
6. Gilt für nicht erstellte Elemente
Dies ist ein neuer Absatz.
").insertAfter("button");Ich hoffe, dass dieser Artikel für alle bei der jQuery-Programmierung hilfreich sein wird.