Eu tenho um elemento de formulário personalizável em uma página de uma biblioteca. Quero ver quais eventos javascript são disparados quando interajo com ele, porque estou tentando descobrir qual manipulador de eventos usar.
Como faço isso usando o Chrome Web Developer?
javascript
google-chrome-devtools
John Hoffman
fonte
fonte
Respostas:
Da mesma forma, você pode clicar com o botão direito do mouse no elemento de destino -> selecionar "inspecionar elemento" Role para baixo no lado direito do quadro de desenvolvimento, na parte inferior é 'ouvintes de eventos'. Expanda a árvore para ver quais eventos estão anexados ao elemento. Não tenho certeza se isso funciona para eventos que são tratados com bolhas (acho que não)
fonte
Você pode usar a função monitorEvents .
Basta inspecionar seu elemento (
right mouse click
→Inspect
no elemento visível ou vá para aElements
guia Ferramentas do desenvolvedor do Chrome e selecione o elemento desejado), depois vá para aConsole
guia e escreva:Agora, quando você passa o mouse sobre esse elemento, focaliza ou clica nele, o nome do evento disparado será exibido com seus dados.
Para parar de obter esses dados, basta escrever no console:
$0
é apenas o último elemento DOM selecionado pelas Ferramentas do desenvolvedor do Chrome. Você pode passar qualquer outro objeto DOM para lá (por exemplo, resultado degetElementById
ouquerySelector
).Você também pode especificar o "tipo" de evento como segundo parâmetro para restringir os eventos monitorados a um conjunto predefinido. Por exemplo:
A lista desses tipos disponíveis está aqui .
Fiz um pequeno gif que ilustra como esse recurso funciona:
fonte
MouseEvent
devo procurar?O Visual Event é um ótimo bookmarklet que você pode usar para exibir os manipuladores de eventos de um elemento. Na demonstração on-line pode ser visto aqui .
fonte
Para o jQuery (pelo menos a versão 1.11.2), o procedimento a seguir funcionou para mim.
$._data(($0), 'events');
o 'Console'handler:
valor.E é hora de parar de reinventar a roda e começar a usar eventos JS vanilla ... :)
fonte
Isso não mostrará eventos personalizados, como aqueles que seu script pode criar, se for um plugin jquery. por exemplo :
O Painel de Eventos em Scripts nas ferramentas de desenvolvedor do Chrome não mostrará "Algo: evento personalizado um"
fonte