HTMLElement: load event
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The load event fires for elements containing a resource when the resource has successfully loaded. Currently, the list of supported HTML elements are: <body>, <embed>, <iframe>, <img>, <link>, <object>, <script>, <style>, and <track>.
Note:
The load event on HTMLBodyElement is actually an alias for the window.onload event. Therefore, the load event will only fire on the <body> element once all of the document's resources have loaded or errored. However, for the sake of clarity, it is recommended that the event handler is attached to the window object directly rather than on HTMLBodyElement.
This event is not cancelable and does not bubble.
Syntax
Use the event name in methods like addEventListener(), or set an event handler property.
addEventListener("load", (event) => { })
onload = (event) => { }
Event type
A generic Event.
Examples
This example prints to the screen whenever the <img> element successfully loads its resource.
HTML
<img
id="image"
src="/shared-assets/images/examples/favicon144.png"
alt="MDN logo"
width="72" />
<div><button>Reload</button></div>
JavaScript
const image = document.getElementById("image");
image.onload = () => {
document.body.appendChild(document.createElement("div")).textContent =
"loaded!";
};
document.querySelector("button").addEventListener("click", reload);
function reload() {
image.src = "/shared-assets/images/examples/favicon144.png";
}
Result
Specifications
| Specification |
|---|
| UI Events> # event-type-load> |
| HTML> # handler-onload> |
| HTML> # event-load> |
Browser compatibility
Loading...