HTMLMediaElement: loadstart 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 loadstart event is fired when the browser has started to load a resource.

Syntax

Use the event name in methods like addEventListener(), or set an event handler property.

js
addEventListener("loadstart", (event) => {});

onloadstart = (event) => {};

Event type

A generic Event.

Examples

Live example

HTML

html
<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>

JavaScript

js
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",
      "https://interactive-examples.mdn.mozilla.net/media/cc0-videos/flower.webm",
    );
    source.setAttribute("type", "video/webm");

    video.appendChild(source);
  }
});

Result

Specifications

Specification
HTML Standard
# event-media-loadstart
HTML Standard
# handler-onloadstart

Browser compatibility

BCD tables only load in the browser

See also