Anonim

Czy miałeś kiedyś jakiś konflikt z detektorem zdarzeń? Lub po prostu chcesz zobaczyć, co jeszcze jest wykonywane na tej samej akcji na stronie. W zależności od przeglądarki może to być wbudowana funkcja.

Wbudowany w przeglądarce

W Google Chrome kliknij prawym przyciskiem myszy stronę, przejdź do Inspect Element. Stamtąd upewnij się, że jesteś na karcie Elementy i kliknij blok HTML. Na prawym pasku bocznym zobaczysz sekcję z zakładkami, w której możesz kliknąć Detektory zdarzeń i zobaczyć działania, których oczekuje dokument. Możesz dokładniej zbadać każdą z tych akcji, aby zobaczyć, gdzie ma miejsce początkowa deklaracja.
W przeglądarce Internet Explorer uważam, że mają one wbudowaną podobną funkcjonalność. Uważam, że w FireFox wymaga dodatku FireBug, aby zobaczyć tę funkcjonalność w przeglądarce.

getEventListeners

Jest to metoda, która jest wypiekana bezpośrednio w Chrome i Firebug dla Firefoksa. Składnia: getEventListeners (obiekt). Tak więc w połączeniu z jQuery prostym przykładem byłoby:

getEventListeners ($ ('# container'));

Po prostu przejdź bezpośrednio do konsoli programisty i wpisz to polecenie dla dowolnego elementu, którego chcesz widzieć w odbiornikach.
getEventListeners Chrome
getEventListeners Firebug

jQuery

Nie ma już w pełni obsługiwanego sposobu na uzyskanie tych informacji w jQuery. Możesz uzyskać dostęp do prywatnej metody w jquery poprzez:

$ ._ data ($ (''), 'events');

Zamień na odpowiednie odniesienie do elementu. Nie jest to publicznie obsługiwane, nie ma dokumentacji i może przestać działać z każdą nową wersją jQuery, więc nie polegaj na nim. Jeśli zamierzasz go użyć, użyj go tylko do debugowania.

Bookmarklet

Jeśli żadna z powyższych odpowiedzi Ci nie odpowiada, istnieje całkiem fajny bookmarklet, który pozwoli ci zobaczyć na stronie, gdzie znajdują się słuchacze. Jeśli tu przejdziesz, zapewnią one bookmarklet do przeciągnięcia na pasek przeglądarki. Jest to szczerze sposób, którego używam najczęściej, ponieważ widzę dokładnie, gdzie znajduje się słuchacz na stronie.

Wyświetl wszystkie nasłuchiwania zdarzeń