HTMLMediaElement: canplaythrough 事件

Baseline 已广泛支持

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

当用户代理能够播放媒体,并估计已加载足够的数据以便能够无中断地播放到媒体结束时,就会触发 canplaythrough 事件。

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

语法

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

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

oncanplaythrough = (event) => { }

事件类型

一个通用的 Event

示例

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

使用 addEventListener()

js
const video = document.querySelector("video");

video.addEventListener("canplaythrough", (event) => {
  console.log(
    "I think I can play through the entire video without having to stop to buffer.",
  );
});

使用 oncanplaythrough 事件处理程序属性

js
const video = document.querySelector("video");

video.oncanplaythrough = (event) => {
  console.log(
    "I think I can play through the entire video without having to stop to buffer.",
  );
};

规范

规范
HTML
# event-media-canplaythrough
HTML
# handler-oncanplaythrough

浏览器兼容性

另见