HTMLMediaElement: 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 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 (<audio> and <video>) 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.
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():
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:
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
Loading…
Related Events
- The HTMLMediaElement 
playingevent - The HTMLMediaElement 
waitingevent - The HTMLMediaElement 
seekingevent - The HTMLMediaElement 
seekedevent - 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