HTML DOM Events
HTML DOM events allow JavaScript to register different event handlers on
elements in an HTML document.
Events are normally used in combination with functions, and the function will not be executed before the event occurs
(such as when a user clicks a button).
Tip: The event model was standardized by the W3C in DOM Level 2.
HTML DOM Events
DOM: Indicates in which DOM Level the property was introduced.
Mouse Events
Event |
Description |
DOM |
onclick |
The event occurs when the user clicks on an element |
2 |
oncontextmenu |
The event occurs when the user right-clicks on an element to open a
context menu |
3 |
ondblclick |
The event occurs when the user double-clicks on an element |
2 |
onmousedown |
The event occurs when the user presses a mouse button over an element |
2 |
onmouseenter |
The event occurs when the pointer is moved onto an element |
2 |
onmouseleave |
The event occurs when the pointer is moved out of
an element |
2 |
onmousemove |
The event occurs when the pointer is moving while it is over an element |
2 |
onmouseover |
The event occurs when the pointer is moved onto an element, or onto one
of its children |
2 |
onmouseout |
The event occurs when a user moves the mouse pointer out of an element,
or out of one of its children |
2 |
onmouseup |
The event occurs when a user releases a mouse button over an element |
2 |
Keyboard Events
Event |
Description |
DOM |
onkeydown |
The event occurs when the user is pressing a key |
2 |
onkeypress |
The event occurs when the user presses a key |
2 |
onkeyup |
The event occurs when the user releases a key |
2 |
Frame/Object Events
Event |
Description |
DOM |
onabort |
The event occurs when the loading of a resource has been aborted |
2 |
onbeforeunload |
The event occurs before the document is about to be unloaded |
2 |
onerror |
The event occurs when an error occurs while loading an external file |
2 |
onhashchange |
The event occurs when there has been changes to the anchor part of a URL |
3 |
onload |
The event occurs when an object has loaded |
2 |
onpageshow |
The event occurs when the user navigates to a webpage |
3 |
onpagehide |
The event occurs when the user navigates away from a webpage |
3 |
onresize |
The event occurs when the document view is resized |
2 |
onscroll |
The event occurs when an element's scrollbar is being scrolled |
2 |
onunload |
The event occurs once a page has unloaded (for
<body>) |
2 |
Form Events
Event |
Description |
DOM |
onblur |
The event occurs when an element loses focus |
2 |
onchange |
The event occurs when the content of a form element, the selection, or the
checked state have changed (for <input>, <keygen>, <select>, and <textarea>) |
2 |
onfocus |
The event occurs when an element gets focus |
2 |
onfocusin |
The event occurs when an element is about to get focus |
2 |
onfocusout |
The event occurs when an element is about to lose focus |
2 |
oninput |
The event occurs when an element gets user input |
3 |
oninvalid |
The event occurs when an element is invalid |
3 |
onreset |
The event occurs when a form is reset |
2 |
onsearch |
The event occurs when the user writes something in a search field (for
<input="search">) |
3 |
onselect |
The event occurs after the user selects some text (for <input> and <textarea>) |
2 |
onsubmit |
The event occurs when a form is submitted |
2 |
Drag Events
Event |
Description |
DOM |
ondrag |
The event occurs when an element is being dragged |
3 |
ondragend |
The event occurs when the user has finished dragging an element |
3 |
ondragenter |
The event occurs when the dragged element enters the drop target |
3 |
ondragleave |
The event occurs when the dragged element leaves the drop target |
3 |
ondragover |
The event occurs when the dragged element is over the drop target |
3 |
ondragstart |
The event occurs when the user starts to drag an element |
3 |
ondrop |
The event occurs when the dragged element is dropped on the drop target |
3 |
Clipboard Events
Event |
Description |
DOM |
oncopy |
The event occurs when the user copies the content of an element |
|
oncut |
The event occurs when the user cuts the content of an element |
|
onpaste |
The event occurs when the user pastes some content in an element |
|
Print Events
Event |
Description |
DOM |
onafterprint |
The event occurs when a page has started printing, or if the print
dialogue box has been closed |
3 |
onbeforeprint |
The event occurs when a page is about to be printed |
3 |
Media Events
Event |
Description |
DOM |
onabort |
The event occurs when the loading of a media is aborted |
3 |
oncanplay |
The event occurs when the browser can start playing the media (when it has buffered
enough to begin) |
3 |
oncanplaythrough |
The event occurs when the browser can play through the media without
stopping for buffering |
3 |
ondurationchange |
The event occurs when the duration of the media is changed |
3 |
onemptied |
The event occurs when something bad happens and the media file is suddenly
unavailable (like unexpectedly disconnects) |
3 |
onended |
The event occurs when the media has reach the end (useful for messages like "thanks for listening") |
3 |
onerror |
The event occurs when an error occurred during the loading of a media file |
3 |
onloadeddata |
The event occurs when media data is loaded |
3 |
onloadedmetadata |
The event occurs when meta data (like dimensions and duration) are loaded |
3 |
onloadstart |
The event occurs when the browser starts looking for the specified media |
3 |
onpause |
The event occurs when the media is paused either by the user or
programmatically |
3 |
onplay |
The event occurs when the media has been started or is no longer paused |
3 |
onplaying |
The event occurs when the media is playing after having been paused or stopped for buffering |
3 |
onprogress |
The event occurs when the browser is in the process of getting the media
data (downloading the media) |
3 |
onratechange |
The event occurs when the playing speed of the media is changed |
3 |
onseeked |
The event occurs when the user is finished moving/skipping to a new position
in the media |
3 |
onseeking |
The event occurs when the user starts moving/skipping to a new position in
the media |
3 |
onstalled |
The event occurs when the browser is trying to get media data, but data is not
available |
3 |
onsuspend |
The event occurs when the browser is intentionally not getting media data |
3 |
ontimeupdate |
The event occurs when the playing position has changed (like when the user
fast forwards to a different point in the media) |
3 |
onvolumechange |
The event occurs when the volume of the media has changed (includes setting the
volume to "mute") |
3 |
onwaiting |
The event occurs when the media has paused but is expected to resume (like
when the media pauses to buffer more data) |
3 |
Animation Events
Event |
Description |
DOM |
animationend |
The event occurs when a CSS animation has completed |
3 |
animationiteration |
The event occurs when a CSS animation is repeated |
3 |
animationstart |
The event occurs when a CSS animation has started |
3 |
Transition Events
Event |
Description |
DOM |
transitionend |
The event occurs when a CSS transition has completed |
3 |
Server-Sent Events
Event |
Description |
DOM |
onerror |
The event occurs when an error occurs with the event source |
|
onmessage |
The event occurs when a message is received through the event source |
|
onopen |
The event occurs when a connection with the event source is opened |
|
Misc Events
Event |
Description |
DOM |
onmessage |
The event occurs when a message is received through or from an object
(WebSocket, Web Worker, Event Source or a child frame or a parent window) |
3 |
onmousewheel |
Deprecated. Use the
onwheel event instead |
|
ononline |
The event occurs when the browser starts to work online |
3 |
onoffline |
The event occurs when the browser starts to work offline |
3 |
onpopstate |
The event occurs when the window's history changes |
3 |
onshow |
The event occurs when a <menu> element is shown as a context menu |
3 |
onstorage |
The event occurs when a Web Storage area is updated |
3 |
ontoggle |
The event occurs when the user opens or closes the <details> element |
3 |
onwheel |
The event occurs when the mouse wheel rolls up or down over an element |
3 |
Touch Events
Event |
Description |
DOM |
ontouchcancel |
The event occurs when the touch is interrupted |
|
ontouchend |
The event occurs when a finger is removed from a touch screen |
|
ontouchmove |
The event occurs when a finger is dragged across the screen |
|
ontouchstart |
The event occurs when a finger is placed on a touch screen |
|
Event Object
Constants
Constant |
Description |
DOM |
CAPTURING_PHASE |
The current event phase is the capture phase (1) |
1 |
AT_TARGET |
The current event is in the target phase, i.e. it is being evaluated
at the event target (2) |
2 |
BUBBLING_PHASE |
The current event phase is the bubbling phase (3) |
3 |
Properties
Property |
Description |
DOM |
bubbles |
Returns whether or not a specific event is a bubbling event |
2 |
cancelable |
Returns whether or not an event can have its default action prevented |
2 |
currentTarget |
Returns the element whose event listeners triggered the event |
2 |
defaultPrevented |
Returns whether or not the preventDefault() method was called for
the event |
3 |
eventPhase |
Returns which phase of the event flow is currently being evaluated |
2 |
isTrusted |
Returns whether or not an event is trusted |
3 |
target |
Returns the element that triggered the event |
2 |
timeStamp |
Returns the time (in milliseconds relative to the epoch) at which
the event was created |
2 |
type |
Returns the name of the event |
2 |
view |
Returns a reference to the Window object where the event occured |
2 |
Methods
Method |
Description |
DOM |
preventDefault() |
Cancels the event if it is cancelable, meaning that the default
action that belongs to the event will not occur |
2 |
stopImmediatePropagation() |
Prevents other listeners of the same event from being called |
3 |
stopPropagation() |
Prevents further propagation of an event during event flow |
2 |
MouseEvent Object
Property |
Description |
DOM |
altKey |
Returns whether the "ALT" key was pressed when the mouse event was triggered |
2 |
button |
Returns which mouse button was pressed when the mouse event was triggered |
2 |
buttons |
Returns which mouse buttons were pressed when the mouse event was triggered |
3 |
clientX |
Returns the horizontal coordinate of the mouse pointer, relative to the current window, when
the mouse event was triggered |
2 |
clientY |
Returns the vertical coordinate of the mouse pointer, relative to the current window, when
the mouse event was triggered |
2 |
ctrlKey |
Returns whether the "CTRL" key was pressed when the mouse event was triggered |
2 |
detail |
Returns a number that indicates how many times the mouse was clicked |
2 |
metaKey |
Returns whether the "META" key was pressed when an event was triggered |
2 |
pageX |
Returns the horizontal coordinate of the mouse pointer, relative to the document, when
the mouse event was triggered |
|
pageY |
Returns the vertical coordinate of the mouse pointer, relative to the document, when
the mouse event was triggered |
|
relatedTarget |
Returns the element related to the element that triggered the mouse event |
2 |
screenX |
Returns the horizontal coordinate of the mouse pointer, relative to the screen, when an event was triggered |
2 |
screenY |
Returns the vertical coordinate of the mouse pointer, relative to
the screen, when an event was triggered |
2 |
shiftKey |
Returns whether the "SHIFT" key was pressed when an event was triggered |
2 |
which |
Returns which mouse button was pressed when the mouse event was triggered |
2 |
KeyboardEvent Object
Property |
Description |
DOM |
altKey |
Returns whether the "ALT" key was pressed when the key event was triggered |
2 |
ctrlKey |
Returns whether the "CTRL" key was pressed when the key event was triggered |
2 |
charCode |
Returns the Unicode character code of the key that triggered the
onkeypress event |
2 |
key |
Returns the key value of the key represented by the event |
3 |
keyCode |
Returns the Unicode character code of the key that triggered the onkeypress event, or the
Unicode key code of the key that triggered the onkeydown or
onkeyup event |
2 |
location |
Returns the location of a key on the keyboard or device |
3 |
metaKey |
Returns whether the "meta" key was pressed when the key event was triggered |
2 |
shiftKey |
Returns whether the "SHIFT" key was pressed when the key event was triggered |
2 |
which |
Returns the Unicode character code of the key that triggered the onkeypress event, or the
Unicode key code of the key that triggered the onkeydown or
onkeyup event |
2 |
HashChangeEvent Object
Property |
Description |
DOM |
newURL |
Returns the URL of the document, after the hash has been changed |
|
oldURL |
Returns the URL of the document, before the hash was changed |
|
PageTransitionEvent Object
Property |
Description |
DOM |
persisted |
Returns whether the webpage was cached by the browser |
|
FocusEvent Object
Property |
Description |
DOM |
relatedTarget |
Returns the element related to the element that triggered the event |
3 |
AnimationEvent Object
Property |
Description |
DOM |
animationName |
Returns the name of the animation |
|
elapsedTime |
Returns the number of seconds an animation has been running |
|
TransitionEvent Object
Property |
Description |
DOM |
propertyName |
Returns the name of the CSS property associated with the transition |
|
elapsedTime |
Returns the number of seconds a transition has been running |
|
WheelEvent Object
Property |
Description |
DOM |
deltaX |
Returns the horizontal scroll amount of a mouse wheel (x-axis) |
3 |
deltaY |
Returns the vertical scroll amount of a mouse wheel (y-axis) |
3 |
deltaZ |
Returns the scroll amount of a mouse wheel for the z-axis |
3 |
deltaMode |
Returns a number that represents the unit of measurements for delta values (pixels, lines or pages) |
3 |