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.
Theload 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:Theload event onHTMLBodyElement is actually an alias for thewindow.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.
In this article
Syntax
Use the event name in methods likeaddEventListener(), or set an event handler property.
addEventListener("load", (event) => { })onload = (event) => { }Event type
A genericEvent.
Examples
This example prints to the screen whenever the<img> element successfully loads its resource.
HTML
<img 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> |