HTMLMediaElement: ended 事件

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

当播放或流媒体因媒体末尾或没有更多可用数据而停止时,会触发 ended 事件。

此事件由 HTMLMediaElement<audio><video>)触发,当播放到达媒体末尾时会触发 ended 事件。

此事件不可取消,也不会冒泡。

注意: 如果 loop 属性为 trueplaybackRate 为非负值,则 ended 事件不会触发。

语法

在诸如 addEventListener() 之类的方法中使用事件名称,或设置事件处理程序属性。

js
addEventListener("ended", (event) => { })

onended = (event) => { }

事件类型

一个通用的 Event

示例

这些示例为 HTMLMediaElement 的 ended 事件添加了一个事件监听器,然后在该事件处理程序响应事件触发后发送一条消息。

使用 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.",
  );
});

使用 onended 事件处理程序属性

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.",
  );
};

规范

规范
HTML
# event-media-ended
HTML
# handler-onended

浏览器兼容性

另见