So lösen Sie die Bindung des On-Bound-Ereignisses in jQuery

PHPz
Freigeben: 2023-04-07 15:10:30
Original
970 Leute haben es durchsucht

jQuery ist eine sehr beliebte JavaScript-Bibliothek, die aufgrund ihrer umfangreichen API und leistungsstarken Selektoren häufig in der Webentwicklung verwendet wird. In jQuery können wir die Methode on() verwenden, um Ereignisse zu binden. Was sollen wir jedoch tun, wenn wir die Bindung eines Ereignisses aufheben müssen?

Ein einzelnes Ereignis entbinden

In jQuery können wir die off()-Methode verwenden, um ein oder mehrere Ereignisse zu entbinden.

Angenommen, wir haben ein Klickereignis über die on()-Methode gebunden:

$('button').on('click', function(){
    alert('Hello World!');
});
Nach dem Login kopieren

Um dieses Ereignis zu entbinden, können wir die off()-Methode für das Element verwenden:

$('button').off('click');
Nach dem Login kopieren

Auf diese Weise können Sie das Klickereignis sicherlich entbinden.

Mehrere Ereignisse entbinden

Wenn wir mehrere Ereignisse gebunden haben und sie alle auf einmal entbinden möchten, können wir in der off()-Methode mehrere Ereignisnamen, getrennt durch Leerzeichen, übergeben.

Angenommen, wir haben die Click- und MouseEnter-Ereignisse über die on()-Methode gebunden:

$('button').on('click mouseenter', function(){
    alert('Hello World!');
});
Nach dem Login kopieren

Um diese beiden Ereignisse zu entbinden, können Sie so schreiben:

$('button').off('click mouseenter');
Nach dem Login kopieren

Binden Sie den spezifischen Event-Handler auf

Wenn wir gebunden haben Wenn Sie mehrere Handler für dasselbe Ereignis haben und einen der Handler entbinden möchten, können wir zwei Parameter an die Methode off() übergeben: den Ereignisnamen und den Handler, dessen Bindung aufgehoben werden soll.

Angenommen, wir haben das Click-Ereignis über die on()-Methode gebunden und zwei Click-Event-Handler erstellt:

function clickHandler1() {
    alert('Hello World1!');
}

function clickHandler2() {
    alert('Hello World2!');
}

$('button').on('click', clickHandler1);
$('button').on('click', clickHandler2);
Nach dem Login kopieren

Wenn wir den ersten Handler entbinden möchten, können wir Folgendes tun:

$('button').off('click', clickHandler1);
Nach dem Login kopieren

Dadurch wird nur die Bindung aufgehoben erste Handler-Funktion, ohne andere Handler-Funktionen zu beeinflussen.

Alle Ereignisse entbinden

Wenn wir schließlich alle Ereignisse auf einmal entbinden möchten, können wir es so machen:

$('button').off();
Nach dem Login kopieren

Aber es sollte beachtet werden, dass diese Methode nicht nur das Ereignis entbindet, sondern auch das Ereignis bei auflöst Gleichzeitig sind alle zugehörigen Daten- und Ereignisverarbeitungsfunktionen angegeben und müssen daher mit Vorsicht verwendet werden.

Zusammenfassung

Ob es darum geht, ein einzelnes Ereignis oder mehrere Ereignisse zu entbinden, die off()-Methode von jQuery kann die Aufgabe perfekt erledigen. Wenn Sie einen bestimmten Event-Handler abbrechen möchten, müssen Sie den Handler, den Sie abbrechen möchten, in der Methode off() angeben.

Während des Entwicklungsprozesses müssen wir diese Methoden flexibel einsetzen, um bessere Codeeffekte zu erzielen.

Das obige ist der detaillierte Inhalt vonSo lösen Sie die Bindung des On-Bound-Ereignisses in jQuery. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!