HTMLMediaElement: suspend 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 suspend event is fired when the user agent is intentionally not fetching media data, in which case HTMLMediaElement.networkState is set to HTMLMediaElement.NETWORK_IDLE. This can happen if there's no more data to load, or if loading is unnecessary; for example, the browser may decide to only buffer 5 minutes of a video in advance, in which case loading is suspended until the user watches more of the video.

This event is not cancelable and does not bubble.

Syntax

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

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

onsuspend = (event) => {};

Event type

A generic Event.

Examples

These examples add an event listener for the HTMLMediaElement's suspend event, then post a message when that event handler has reacted to the event firing.

Using addEventListener():

js
const video = document.querySelector("video");

video.addEventListener("suspend", (event) => {
  console.log("Data loading has been suspended.");
});

Using the onsuspend event handler property:

js
const video = document.querySelector("video");

video.onsuspend = (event) => {
  console.log("Data loading has been suspended.");
};

Specifications

Specification
HTML
# event-media-suspend
HTML
# handler-onsuspend

Browser compatibility

See also