Se alle Event Lyttere

Har noen gang hatt en slags konflikt på en hendelselytter? Eller bare vil se hva annet blir utført på samme handling på siden. Avhengig av nettleseren din, kan dette eller ikke være en innebygd funksjonalitet.

Innebygd i nettleser

I Google Chrome, høyreklikk på siden, gå til Inspect Element. Derfra sørg for at du er på fanen Elements og klikk på en blokk med HTML. På høyre sidepanel ser du en fanebladdeler hvor du kan klikke Event Lyttere og se handlingene som dokumentet lytter etter. Du kan drill videre på hver av disse handlingene for å se hvor den opprinnelige deklarasjonen oppstår.
I Internet Explorer tror jeg at de har samme funksjonalitet innebygd. I FireFox tror jeg det krever en FireBug-tillegg for å se den funksjonaliteten i nettleseren.

getEventListeners

Dette er en metode som er bakt direkte inn i Chrome og Firebug for Firefox. Syntaks: getEventListeners (objekt). Så i forbindelse med jQuery, ville et enkelt eksempel være:

 getEventListeners ($ ( '# container')); 

Bare gå direkte til utviklerkonsollen og skriv den kommandoen for det elementet du vil se lytterne for.
getEventListeners Chrome
getEventListeners Firebug

jQuery

Det finnes ingen fullstendig støttet måte å få denne informasjonen i jQuery lenger. Du kan få tilgang til en privat metode i jquery via:

 $ ._ data ($ ( '[velgeren]') [0], 'hendelser'); 

Erstatt [selector] med riktig elementreferanse. Dette er ikke offentlig støttet, det er ingen dokumentasjon, og det kan slutte å fungere med en ny versjon av jQuery, så stol ikke på det. Hvis du skal bruke den, bruk den bare til feilsøking.

bookmarklet

Hvis ingen av de ovennevnte passer deg, er det et ganske kult bokmerke som lar deg se på siden der lytterne befinner seg. Hvis du går her, gir de bokmerket til å dra til nettleserens bar. Dette er ærlig den måten jeg bruker oftest som jeg kan se nøyaktig hvor lytteren ligger på siden.

Se Også