This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The loadstart event is fired when the browser has started to load a resource.
Use the event name in methods like addEventListener(), or set an event handler property.
addEventListener("loadstart", (event) => { })
onloadstart = (event) => { }
A generic Event.
<div class="example">
<button type="button">Load video</button>
<video controls width="250"></video>
<div class="event-log">
<label for="eventLog">Event log:</label>
<textarea readonly class="event-log-contents" id="eventLog"></textarea>
</div>
</div>
const loadVideo = document.querySelector("button");
const video = document.querySelector("video");
const eventLog = document.querySelector(".event-log-contents");
let source = null;
function handleEvent(event) {
eventLog.textContent += `${event.type}\n`;
}
video.addEventListener("loadstart", handleEvent);
video.addEventListener("progress", handleEvent);
video.addEventListener("canplay", handleEvent);
video.addEventListener("canplaythrough", handleEvent);
loadVideo.addEventListener("click", () => {
if (source) {
document.location.reload();
} else {
loadVideo.textContent = "Reset example";
source = document.createElement("source");
source.setAttribute("src", "/shared-assets/videos/flower.webm");
source.setAttribute("type", "video/webm");
video.appendChild(source);
}
});
| Specification |
|---|
| HTML> # event-media-loadstart> |
| HTML> # handler-onloadstart> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
loadstart_event |
3 | 12 | 6 | ≤12.1 | 4 | 18 | 6 | ≤12.1 | 3 | 1.0 | 4.4 | 3 |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/loadstart_event