HTMLMediaElement: ended event - Web APIs | MDN (original) (raw)
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 ended event is fired when playback or streaming has stopped because the end of the media was reached or because no further data is available.
This event occurs based upon HTMLMediaElement ( and ) fire ended when playback reaches the end of the media.
This event is not cancelable and does not bubble.
**Note:**The ended event doesn't fire if the loop property is true and playbackRate is non-negative.
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
These examples add an event listener for the HTMLMediaElement's ended 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("ended", (event) => {
console.log(
"Video stopped either because it has finished playing or no further data is available.",
);
});
Using the onended event handler property:
js
const video = document.querySelector("video");
video.onended = (event) => {
console.log(
"Video stopped either because it has finished playing or no further data is available.",
);
};
Specifications
| Specification |
|---|
| HTML # event-media-ended |
| HTML # handler-onended |
Browser compatibility
- The HTMLMediaElement playing event
- The HTMLMediaElement waiting event
- The HTMLMediaElement seeking event
- The HTMLMediaElement seeked event
- The HTMLMediaElement loadedmetadata event
- The HTMLMediaElement loadeddata event
- The HTMLMediaElement canplay event
- The HTMLMediaElement canplaythrough event
- The HTMLMediaElement durationchange event
- The HTMLMediaElement timeupdate event
- The HTMLMediaElement play event
- The HTMLMediaElement pause event
- The HTMLMediaElement ratechange event
- The HTMLMediaElement volumechange event
- The HTMLMediaElement suspend event
- The HTMLMediaElement emptied event
- The HTMLMediaElement stalled event