HTMLElement: load event
{{APIRef}}
The load
event fires for elements containing a resource when the resource has successfully loaded. Currently, the list of supported HTML elements are: {{HTMLElement("body")}}
, {{HTMLElement("embed")}}
, {{HTMLElement("iframe")}}
, {{HTMLElement("img")}}
, {{HTMLElement("link")}}
, {{HTMLElement("object")}}
, {{HTMLElement("script")}}
, {{HTMLElement("style")}}
, and {{HTMLElement("track")}}
.
[!NOTE] The
load
event on{{domxref("HTMLBodyElement#event_handlers", "HTMLBodyElement")}}
is actually an alias for the{{domxref("Window/load_event", "window.onload")}}
event. Therefore, theload
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 thewindow
object directly rather than onHTMLBodyElement
.
This event is not cancelable and does not bubble.
Syntax
Use the event name in methods like {{domxref("EventTarget.addEventListener", "addEventListener()")}}
, or set an event handler property.
elt.addEventListener("load", (event) => { ... });
// or
elt.onload = (event) => { ... };
Event type
A generic {{domxref("Event")}}
.
Examples
This example prints to the screen whenever the {{HtmlElement("img")}}
element successfully loads its resource.
HTML
<img id="image" src="favicon144.png" alt="MDN logo" width="72" />
<div><button onclick="reload()">Reload</button></div>
JavaScript
const image = document.getElementById("image");
image.onload = () => {
document.body.appendChild(document.createElement("div")).textContent =
"loaded!";
};
function reload() {
image.src = "favicon144.png";
}
Result
{{EmbedLiveSample("Example", "100%", "200")}}
Specifications
{{Specifications}}
Browser compatibility
{{Compat}}
See also
-
Related events
- Window:
{{domxref("Window/load_event", "load")}}
event - Window:
{{domxref("Window/error_event", "error")}}
event
- Window: