16

I'm wondering if it is possible to view

1. How many event listeners

2. What type of event listener

On a single web page.

Reason being is because I'm using off(); method.

I'm using this framework, which is basically jQuery but not.

Yeah, I'm using off but the even't isn't removing and and I have a feeling there is more than one eventListener on the element.

If it is not possible with Javascript, it is possible in the browser?

Brian Tompsett - 汤莱恩
  • 5,753
  • 72
  • 57
  • 129
iConnor
  • 19,997
  • 14
  • 62
  • 97

3 Answers3

24

A long time passes...

I have found something new in Chrome DevTools.

Simple as this in the console

getEventListeners(yourElement);

Documentation: https://developers.google.com/chrome-developer-tools

iConnor
  • 19,997
  • 14
  • 62
  • 97
  • But where is the actual function definition for whatever is listening. I just see a huge object tree. I want to know what exactly is triggered by the event. – Buttle Butkus Nov 03 '15 at 22:15
20

Chrome has some built in tools. If you open up the element inspector, focus on an element, scroll to the bottom of the right hand column (where the CSS/Metrics/etc are), you should see a drop down section that says Event Listeners. This can help some...

Often I find it easier to just add event listeners to some DOM element via the console and seeing if it responds. Or I throw in debuggers in various places (before setting up the listener, and inside the listener's callback). The problems I usually run into is the selector I think exists doesn't or the event gets bound too early and misses the selector.

Parris
  • 17,833
  • 17
  • 90
  • 133
1

You can use the Visual Event bookmarklet: http://www.sprymedia.co.uk/article/Visual+Event+2

Robbie
  • 139
  • 2
  • There is a chrome extension as well which uses the same code https://chrome.google.com/webstore/detail/visual-event/pbmmieigblcbldgdokdjpioljjninaim – Dhaval Nov 12 '15 at 03:28