Heim >Web-Frontend >js-Tutorial >Wie rufe ich eine Liste von Event-Handlern ab, die an ein Element in jQuery gebunden sind?

Wie rufe ich eine Liste von Event-Handlern ab, die an ein Element in jQuery gebunden sind?

DDD
DDDOriginal
2024-11-07 22:59:03857Durchsuche

How to Retrieve a List of Event Handlers Bound to an Element in jQuery?

Erhalten einer Liste von Ereignishandlern, die an ein Element in jQuery gebunden sind

Stellen Sie sich ein HTML-Element mit der ID „elm“ vor, zu dem zwei Ereignisse gehören Handler sind angehängt: einer für das Klickereignis und einer für das Mouseover-Ereignis. Es kann wünschenswert sein, eine Liste aller mit diesem Element verknüpften Ereignishandler zu erhalten.

Um dies in modernen Versionen von jQuery zu erreichen, kann die Methode $._data genutzt werden. Diese Methode bietet Zugriff auf interne Daten, die einem jQuery-Objekt zugeordnet sind, einschließlich aller von jQuery gebundenen Ereignisse. Es ist jedoch wichtig zu beachten, dass $._data nur für den internen Gebrauch bestimmt ist.

Der folgende Code zeigt, wie man $._data verwendet, um Ereignisse aufzulisten, die an das Element mit der ID „elm“ gebunden sind:

// Bind event handlers to element
$('#elm').click(_f);
$('#elm').mouseover(_m);

// Retrieve events bound to element
$._data($('#elm')[0], "events");

Das Ergebnis von $._data ist ein Objekt, das alle gebundenen Ereignisse enthält. Für jedes Ereignis entsprechen die Objekteigenschaften dem Ereignistyp, während die Werte einem Array von Ereignishandlern entsprechen.

Um Ereignishandler weiter zu analysieren, können Sie in Chrome mit der rechten Maustaste auf die Handlerfunktion klicken und auswählen „Funktionsdefinition anzeigen.“ Diese Aktion zeigt die genaue Position an, an der der Handler im Code des Benutzers definiert ist.

Das obige ist der detaillierte Inhalt vonWie rufe ich eine Liste von Event-Handlern ab, die an ein Element in jQuery gebunden sind?. 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