AudioTrackList: addtrack 事件

可用性有限

此特性不是基線特性,因為它在一些最廣泛使用的瀏覽器中不起作用。

當一個軌道被新增到 AudioTrackList 時,會觸發 addtrack 事件。

語法

在諸如 addEventListener() 之類的方法中使用事件名稱,或設定事件處理程式屬性。

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

onaddtrack = (event) => { }

事件型別

一個 TrackEvent。繼承自 Event

Event TrackEvent

事件屬性

TrackEvent 基於 Event,因此 Event 的屬性在 TrackEvent 物件上也是可用的。

track 只讀

事件引用的 DOM 軌道物件。如果不是 null,則始終是以下媒體軌道型別之一的物件:AudioTrackVideoTrackTextTrack)。

描述

觸發

每當媒體元素的音訊軌道由 AudioTrackList 物件表示時,如果向該媒體元素添加了新軌道,就會呼叫 addtrack 事件。當媒體首次附加到元素時,軌道被新增到元素中,就會發生這種情況;媒體資源中的每個音訊軌道都會發生一個 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

瀏覽器相容性

另見