Bekijk alle evenementluisteraars

Ooit een conflict gehad met een gebeurtenislistener? Of wil je gewoon zien wat er nog meer wordt uitgevoerd op dezelfde actie op de pagina. Afhankelijk van uw browser is dit al dan niet een ingebouwde functionaliteit.

Ingebouwd in browser

Klik in Google Chrome met de rechtermuisknop op de pagina en ga naar Inspect Element. Zorg er vanaf daar voor dat u op het tabblad Elementen staat en klik op een HTML-blok. In de rechterzijbalk ziet u een sectie met tabbladen waarin u op Event Luisteraars kunt klikken en de acties kunt zien waarnaar het document luistert. U kunt meer informatie over elk van deze acties krijgen om te zien waar de initiële melding zich voordoet.
In Internet Explorer denk ik dat ze dezelfde functionaliteit ingebouwd hebben. In FireFox denk ik dat er een FireBug-add-on voor nodig is om die functionaliteit in de browser te kunnen zien.

getEventListeners

Dit is een methode die rechtstreeks in Chrome en Firebug voor Firefox wordt gebakken. Syntaxis: getEventListeners (object). Dus in combinatie met jQuery zou een eenvoudig voorbeeld zijn:

 getEventListeners ($ ( '# container')); 

Ga gewoon rechtstreeks naar de ontwikkelaarsconsole en typ die opdracht voor het element waarvoor u de luisteraars wilt zien.
getEventListeners Chrome
getEventListeners Firebug

jQuery

Er is geen volledig ondersteunde manier om deze informatie in jQuery te krijgen. U hebt toegang tot een privémethode in jQuery via:

 ._ $ data ($ ( '[selector]) [0], 'events'); 

Vervang [selector] door uw juiste elementreferentie. Dit wordt niet publiekelijk ondersteund, er is geen documentatie en het kan stoppen met werken met elke nieuwe release van jQuery, dus vertrouw er niet op. Als je het gaat gebruiken, gebruik het dan alleen voor foutopsporing.

bookmarklet

Als geen van de bovenstaande opties jou aanspreekt, is er een vrij coole bookmarklet die je op de pagina laat zien waar de luisteraars zich bevinden. Als je hier naartoe gaat, bieden ze de bookmarklet die je naar de balk van je browser kunt slepen. Dit is eerlijk de manier waarop ik het vaakst gebruik, omdat ik precies kan zien waar de luisteraar zich op de pagina bevindt.

Zie Ook