AudioScheduledSourceNode: ended event
{{APIRef("Web Audio API")}}
The ended event of the {{domxref("AudioScheduledSourceNode")}} interface is fired when the source node has stopped playing.
This event occurs when an {{domxref("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 {{domxref("EventTarget.addEventListener", "addEventListener()")}} , or set an event handler property.
addEventListener("ended", (event) => { })
onended = (event) => { }
Event type
A generic {{domxref("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:
node.addEventListener("ended", () => {
document.getElementById("startButton").disabled = false;
});
You can also set up the event handler using the onended property:
node.onended = () => {
document.getElementById("startButton").disabled = false;
};
For an example of the ended event in use, see our audio-buffer example on GitHub.
Specifications
{{Specifications}}
Browser compatibility
{{Compat}}
Related events
See also
{{domxref("HTMLAudioElement")}}{{domxref("HTMLVideoElement")}}{{HTMLElement("audio")}}{{HTMLElement("video")}}- The HTMLMediaElement
{{domxref("HTMLMediaElement.ended_event", 'ended')}}event - The MediaStreamTrack
{{domxref("MediaStreamTrack.ended_event", 'ended')}}event