Wo kann ich eine komplette Liste aller jQuery unterstützten Ereignisse (wie finden click
, mouseup
usw.) mit einigen Erklärungen , wenn sie ausgelöst werden? Ich suche diejenigen, die gebunden werden können:
$('#foo').bind('click', handler);
Zum Beispiel habe ich gerade zufällig herausgefunden, dass es ein paste
Ereignis gibt, aber ich kann nirgendwo in ihren Dokumenten Verweise darauf finden. Was gibt es noch?
jquery
events
dom-events
serg
quelle
quelle
Antworten:
Eine nicht vollständige Liste finden Sie unter http://api.jquery.com/category/events/ . Es werden weitere DOM-Ereignisse durch
.bind()
und unterstützt.live()
. Diese Funktionen können jedem Standard-DOM-Ereignis einen Handler zuweisen. Die meisten dieser Funktionen sind zusammen mit den Kompatibilitätstabellen unter http://www.quirksmode.org/dom/events/ aufgeführt.Ab jQuery 1.7 sollten Sie
.on()
anstelle von.live()
und verwenden.bind()
.quelle
paste
Ereignis nicht unterstützt .mouseleave
es nur im IE funktioniert, aber es ist nicht wahr.mouseleave
von jQuery implementiert, es ist kein Standardereignis. Firefox und Chrome unterstützen es nicht, ich habe Safari und Opera nicht überprüft. jQuery stellt dieses Ereignis in diesen Browsern bereit. Sie haben jedoch Recht, einige der quirksmode.org-Inhalte sind veraltet.touch
Ereignisse werden beispielsweise nicht aufgelistet.MDN hat einen guten Überblick über die meisten Standard- und Nicht-Standardereignisse
https://developer.mozilla.org/en-US/docs/Web/Reference/Events
quelle
Sie können die vollständige Liste der jQuery-Ereignisse einsehen: http://api.jquery.com/category/events/
In Bezug auf das von
paste
Ihnen erwähnte Ereignis kann jQuery jedoch auch an Standard-DOM-Ereignisse binden. Eine gute Liste bietet MDN https://developer.mozilla.org/en-US/docs/Web/Eventsquelle
Diese Seite listet meines Wissens alle Ereignisse auf , die in allen Browsern funktionieren . Sie werden das "Einfügen" -Ereignis hier nicht finden, da es, wie andere betonten, nicht in allen Browsern funktioniert.
http://www.authenticsociety.com/jquery/list-all-jquery-events.html
quelle
.mouseup()
:: Der Mauszeiger befindet sich jederzeit über einem Element, während die Maustaste gedrückt istIch weiß, dass diese Frage ziemlich alt ist. Aber um eine aktualisierte und vollständige Antwort auf diese Frage zu geben.
Die Verknüpfungsmethoden haben immer den gleichen Namen wie die Ereignisnamen, die in einer der Methoden on () / bind () / live () verwendet werden.
Wenn Sie also eine Verknüpfungsereignisfunktion verwenden möchten, aber mit on () / bind () / live (), können Sie einfach den Methodennamen übernehmen , die Klammern weglassen und ihn in Anführungszeichen wie folgt setzen: "eventname" / 'eventname' . Sie sollten sich gleich verhalten.
Also zum Beispiel: .dblclick () -> 'dblclick' =>
$('a').on('dblclick', function() { console.log("I got double clicked"); });
http://api.jquery.com/category/events/ ist eine vollständige Liste der Ereignismethoden. (Ja, ich weiß, dass ich nicht der einzige bin, der auf diese Site verweist, aber zusammen mit meiner Erklärung handelt es sich tatsächlich um eine vollständige Liste der Ereignisse für 'on' / 'live' / 'bind')
Wenn Sie die Möglichkeit haben, on () zu verwenden, sollten Sie dies tun, da on () dasselbe tut und alle Aufrufe von 'bind' und 'live' tatsächlich die Funktion 'on' aufrufen. Hier ist ein weiterer Beweis dafür: Was ist der Unterschied zwischen "on" und "live" oder "bind"?
Einige Leute fragten auch nach den Touch-Ereignissen (mobil). Ich empfehle generell, sich an die on () -Ereignismethode zu gewöhnen, da dies laut der mobilen jQuery-Dokumentation die einzige Möglichkeit ist, Berührungsereignisse für HTML-Elemente zu registrieren, was den zukünftigen API-Plänen von jQuery zum Entfernen von bind () / live (entspricht) ) und alle Verknüpfungsereignismethoden.
quelle