AudioScheduledSourceNode: ended event

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2021.

The ended event of the AudioScheduledSourceNode interface is fired when the source node has stopped playing.

This event occurs when a AudioScheduledSourceNode has stopped playing, either because it's reached a predetermined stop time, the full duration of the audio has been performed, or because the entire buffer has been played.

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("ended", (event) => { })

onended = (event) => { }

Event type

A generic Event.

Examples

In this simple example, an event listener for the ended event is set up to enable a "Start" button in the user interface when the node stops playing:

js
node.addEventListener("ended", () => {
  document.getElementById("startButton").disabled = false;
});

You can also set up the event handler using the onended property:

js
node.onended = () => {
  document.getElementById("startButton").disabled = false;
};

For an example of the ended event in use, see our audio-buffer example on GitHub.

Specifications

Specification
Web Audio API
# dom-audioscheduledsourcenode-onended

Browser compatibility

BCD tables only load in the browser

See also