AudioTrackList: removetrack 事件

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

当一个音轨从 AudioTrackList 中移除时,会触发 removetrack 事件。

语法

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

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

onremovetrack = (event) => { }

事件类型

一个 TrackEvent。继承自 Event

Event TrackEvent

事件属性

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

track 只读

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

描述

触发

每当一个音轨从由 AudioTrackList 对象表示的媒体元素的音轨中移除时,都会调用 removetrack 事件。

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

用例

您可以使用此事件来响应新的音轨变得不可用。例如,您可能希望更新 UI 元素,禁止用户选择已移除的音轨。

示例

使用 addEventListener()

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

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

使用 onremovetrack 事件处理程序属性

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

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

规范

规范
HTML
# event-media-removetrack
HTML
# handler-tracklist-onremovetrack

浏览器兼容性

另见