Looking for a full list of jQuery event types

Where I can find a complete list of all jQuery supported events (like click , mouseup etc) with some explanations when they are triggered? I am looking for those that can be binded:

$('#foo').bind('click', handler); 

For example I just found out by accident that there is paste event but I can't find any references to it anywhere in their docs. What else is there?

5,867 72 72 gold badges 60 60 silver badges 132 132 bronze badges asked May 27, 2010 at 19:20 111k 77 77 gold badges 322 322 silver badges 336 336 bronze badges

The bind() method was deprecated in version 3.0. Use the on() method instead. Following is a link to the jquery on() method: api.jquery.com/on

Commented May 9, 2019 at 22:01

5 Answers 5

A non exhaustive list is at http://api.jquery.com/category/events/. There are more DOM events supported through .bind() and .live() . Those functions can assign a handler to any standard DOM event, most of which are listed along with compatibility tables at http://www.quirksmode.org/dom/events/

The .bind() method is the primary means of attaching behavior to a document. All JavaScript event types, such as focus, mouseover, and resize, are allowed for eventType.

As of jQuery 1.7, you should use .on() in place of .live() and .bind() .

answered May 27, 2010 at 19:24 344k 86 86 gold badges 479 479 silver badges 448 448 bronze badges

All bind events is what I am looking for (not shortcut functions). Maybe I should rephrase my question.

Commented May 27, 2010 at 19:25

@serg555: I added a quirksmode.org link, most (if not, all) events are listed there along with compatibility tables for each browser. Note that Opera doesn't support the paste event.

Commented May 27, 2010 at 19:30

After taking a closer look it seems pretty outdated. For example it says mouseleave is working only in IE but it is not true.

Commented May 27, 2010 at 19:36

@serg555: actually, mouseleave is implemented by jQuery, it is not a standard event. Firefox and Chrome do not support it, I haven't checked Safari and Opera. jQuery provides this event in those browsers. you are right, though, some of the quirksmode.org stuff is outdated.

Commented May 27, 2010 at 21:33 This answer is not really up to date. touch events are not listed for example. Commented Feb 10, 2014 at 15:54

MDN has a good overview of majority of the standard and non-standard events

answered Jul 3, 2013 at 8:59 161 1 1 silver badge 5 5 bronze badges

You can check out the full list of jQuery events: http://api.jquery.com/category/events/

But regarding the paste event you mentioned, jQuery can also bind to standard DOM events. A good list is provided by MDN https://developer.mozilla.org/en-US/docs/Web/Events

8,945 1 1 gold badge 27 27 silver badges 24 24 bronze badges answered Dec 12, 2014 at 9:55 afasdfasdf afasdfasdf 31 1 1 bronze badge

I know this question is pretty old. But for the sake of giving an updated and complete answer to this question.

The shortcut methods are always named the same as the event names used in any of the on()/bind()/live() methods.

So if you want to use any shortcut event feature but with on()/bind()/live() you can just take the method name, ommit the brackets and put it in quotes like so: "eventname"/'eventname'. They should behave the same.

So for example: .dblclick() -> 'dblclick' =>

$('a').on('dblclick', function() < console.log("I got double clicked"); >); 

http://api.jquery.com/category/events/ is a complete list of event methods. (Yes I know I'm not the only one pointing to this site but together with my explanation it actually is a complete list of events for 'on'/'live'/'bind')

If you have the chance to use on() you should do so since on() does the same and all calls to 'bind' and 'live' actually call the 'on' function. Here is more prove about this: What's the difference between `on` and `live` or `bind`?

Also some people asked about the touch (mobile) events. I generally recommend to get used to the on() event method because according to the jQuery mobile documentation this is the only way to register touch events on html elements, which is on par with jQuery's future api plans to remove bind()/live() and all the shortcut event methods.