HTML5 Event Attributes
Global Event Attributes
HTML 4 added the ability to let events trigger actions in a browser, like starting a JavaScript when a user clicks on an element.
To learn more about programming events, please visit our JavaScript tutorial and our DHTML tutorial.
Below are the global event attributes that can be added to HTML5 elements to define event actions.
New : New event attributes in HTML5.
Window Event Attributes
Events triggered for the window object (applies to the <body> tag):
| Attribute | Value | Description |
|---|---|---|
| onafterprintNew | script | Script to be run after the document is printed |
| onbeforeprintNew | script | Script to be run before the document is printed |
| onbeforeonloadNew | script | Script to be run before the document loads |
| onblur | script | Script to be run when the window loses focus |
| onerrorNew | script | Script to be run when an error occur |
| onfocus | script | Script to be run when the window gets focus |
| onhaschangeNew | script | Script to be run when the document has changed |
| onload | script | Script to be run when the document loads |
| onmessageNew | script | Script to be run when the message is triggered |
| onofflineNew | script | Script to be run when the document goes offline |
| ononlineNew | script | Script to be run when the document comes online |
| onpagehideNew | script | Script to be run when the window is hidden |
| onpageshowNew | script | Script to be run when the window becomes visible |
| onpopstateNew | script | Script to be run when the window's history changes |
| onredoNew | script | Script to be run when the document performs a redo |
| onresizeNew | script | Script to be run when the window is resized |
| onstorageNew | script | Script to be run when when a Web Storage area is updated |
| onundoNew | script | Script to be run when the document performs an undo |
| onunloadNew | script | Script to be run when the user leaves the document |
Form Events
Events triggered by actions inside a HTML form (applies to all HTML5 elements, but is most common in form elements):
| Attribute | Value | Description |
|---|---|---|
| onblur | script | Script to be run when an element loses focus |
| onchange | script | Script to be run when an element changes |
| oncontextmenuNew | script | Script to be run when a context menu is triggered |
| onfocus | script | Script to be run when an element gets focus |
| onformchangeNew | script | Script to be run when a form changes |
| onforminputNew | script | Script to be run when a form gets user input |
| oninputNew | script | Script to be run when an element gets user input |
| oninvalidNew | script | Script to be run when an element is invalid |
| onreset | script | Script to be run when a form is reset Not supported in HTML5 |
| onselect | script | Script to be run when an element is selected |
| onsubmit | script | Script to be run when a form is submitted |
Keyboard Events
Events triggered by a keyboard (applies to all HTML5 elements):
| Attribute | Value | Description |
|---|---|---|
| onkeydown | script | Script to be run when a key is pressed down |
| onkeypress | script | Script to be run when a key is pressed and released |
| onkeyup | script | Script to be run when a key is released |
Mouse Events
Events triggered by a mouse, or similar user actions (applies to all HTML5 elements):
| Attribute | Value | Description |
|---|---|---|
| onclick | script | Script to be run on a mouse click |
| ondblclick | script | Script to be run on a mouse double-click |
| ondragNew | script | Script to be run when an element is dragged |
| ondragendNew | script | Script to be run at the end of a drag operation |
| ondragenterNew | script | Script to be run when an element has been dragged to a valid drop target |
| ondragleaveNew | script | Script to be run when an element leaves a valid drop target |
| ondragoverNew | script | Script to be run when an element is being dragged over a valid drop target |
| ondragstartNew | script | Script to be run at the start of a drag operation |
| ondropNew | script | Script to be run when dragged element is being dropped |
| onmousedown | script | Script to be run when a mouse button is pressed |
| onmousemove | script | Script to be run when the mouse pointer moves |
| onmouseout | script | Script to be run when the mouse pointer moves out of an element |
| onmouseover | script | Script to be run when the mouse pointer moves over an element |
| onmouseup | script | Script to be run when a mouse button is released |
| onmousewheelNew | script | Script to be run when the mouse wheel is being rotated |
| onscrollNew | script | Script to be run when an element's scrollbar is being scrolled |
Media Events
Events triggered by medias like videos, images and audio (applies to all HTML5 elements, but is most common in media elements, like audio, embed, img, object, and video):
| Attribute | Value | Description |
|---|---|---|
| onabort | script | Script to be run on abort |
| oncanplayNew | script | Script to be run when a file is ready to start playing (when it has buffered enough to begin) |
| oncanplaythroughNew | script | Script to be run when a file can be played all the way to the end without pausing for buffering |
| ondurationchangeNew | script | Script to be run when the length of the media changes |
| onemptiedNew | script | Script to be run when something bad happens and the file is suddenly unavailable (like unexpectedly disconnects) |
| onendedNew | script | Script to be run when the media has reach the end (a useful event for messages like "thanks for listening") |
| onerrorNew | script | Script to be run when an error occurs when the file is being loaded |
| onloadeddataNew | script | Script to be run when media data is loaded |
| onloadedmetadataNew | script | Script to be run when meta data (like dimensions and duration) are loaded |
| onloadstartNew | script | Script to be run just as the file begins to load before anything is actually loaded |
| onpauseNew | script | Script to be run when the media is paused either by the user or programmatically |
| onplayNew | script | Script to be run when the media is ready to start playing |
| onplayingNew | script | Script to be run when the media actually has started playing |
| onprogressNew | script | Script to be run when the browser is in the process of getting the media data |
| onratechangeNew | script | Script to be run each time the playback rate changes (like when a user switches to a slow motion or fast forward mode) |
| onreadystatechangeNew | script | Script to be run each time the ready state changes (the ready state tracks the state of the media data) |
| onseekedNew | script | Script to be run when the seeking attribute is set to false indicating that seeking has ended |
| onseekingNew | script | Script to be run when the seeking attribute is set to true indicating that seeking is active |
| onstalledNew | script | Script to be run when the browser is unable to fetch the media data for whatever reason |
| onsuspendNew | script | Script to be run when fetching the media data is stopped before it is completely loaded for whatever reason |
| ontimeupdateNew | script | Script to be run when the playing position has changed (like when the user fast forwards to a different point in the media) |
| onvolumechangeNew | script | Script to be run each time the volume is changed which (includes setting the volume to "mute") |
| onwaitingNew | script | Script to be run when the media has paused but is expected to resume (like when the media pauses to buffer more data) |

