HTMLMediaElement: ended event
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 (<audio> and <video>) fire ended when playback of the media reaches the end of the media.
| Bubbles | No |
|---|---|
| Cancelable | No |
| Interface | Event |
| Target | Element |
| Default Action | None |
| Event handler property | GlobalEventHandlers.onended |
Note: This event is also defined in Media Capture and Streams and Web Audio API
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():
const video = document.querySelector('video');
video.addEventListener('ended', (event) => {
console.log('Video stopped either because 1) it was over, ' +
'or 2) no further data is available.');
});
Using the onended event handler property:
const video = document.querySelector('video');
video.onended = (event) => {
console.log('Video stopped either because 1) it was over, ' +
'or 2) no further data is available.');
};
Specifications
| Specification |
|---|
| HTML Standard # event-media-ended |
Browser compatibility
BCD tables only load in the browser
Related Events
- The HTMLMediaElement
playingevent - The HTMLMediaElement
waitingevent - The HTMLMediaElement
seekingevent - The HTMLMediaElement
seekedevent - The HTMLMediaElement
endedevent - The HTMLMediaElement
loadedmetadataevent - The HTMLMediaElement
loadeddataevent - The HTMLMediaElement
canplayevent - The HTMLMediaElement
canplaythroughevent - The HTMLMediaElement
durationchangeevent - The HTMLMediaElement
timeupdateevent - The HTMLMediaElement
playevent - The HTMLMediaElement
pauseevent - The HTMLMediaElement
ratechangeevent - The HTMLMediaElement
volumechangeevent - The HTMLMediaElement
suspendevent - The HTMLMediaElement
emptiedevent - The HTMLMediaElement
stalledevent