AudioTrackList: addtrack 事件

可用性有限

此功能并非基线功能,因为它在一些最广泛使用的浏览器中无法正常工作。

当轨道添加到 AudioTrackList 时,将触发 addtrack 事件。

语法

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

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

onaddtrack = (event) => { }

事件类型

事件属性

TrackEvent 基于 Event,因此 Event 的属性也可用于 TrackEvent 对象。

track 只读

事件所引用的 DOM 轨道对象。如果非 null,则始终为以下媒体轨道类型之一的对象:AudioTrackVideoTrackTextTrack)。

描述

触发

每当向媒体元素添加新轨道时,都会调用 addtrack 事件,其中 AudioTrackList 对象表示媒体元素的音频轨道。当媒体首次附加到元素时,轨道会添加到元素中;对于媒体资源中的每个音频轨道,将发生一个 addtrack 事件。

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

用例

您可以使用此事件来响应新的音频轨道可用。例如,您可能希望更新您的 UI 元素以允许用户选择新的音频轨道。

示例

使用 addEventListener()

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

videoElement.audioTracks.addEventListener("addtrack", (event) => {
  console.log(`Audio track: ${event.track.label} added`);
});

使用 onaddtrack 事件处理程序属性

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

videoElement.audioTracks.onaddtrack = (event) => {
  console.log(`Audio track: ${event.track.label} added`);
};

规范

规范
HTML 标准
# event-media-addtrack
HTML 标准
# handler-tracklist-onaddtrack

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅