TextTrack
Baseline 廣泛可用 *
TextTrack 介面是 WebVTT API 的一部分,代表與媒體元素關聯的文字軌道。
此型別的物件擁有將在影片不同時間點顯示的 VTTCue 物件列表。
可以使用 HTMLMediaElement.addTextTrack() 方法將 TextTrack 物件新增到 HTMLVideoElement 或 HTMLAudioElement 元素中,這與在 <video> 或 <audio> 元素中使用 <track> 元素宣告式新增文字軌道具有相同效果。TextTrack 物件儲存在 TextTrackList 中,可以透過 HTMLMediaElement.textTracks 屬性檢索。
例項屬性
此介面還繼承了 EventTarget 的屬性。
TextTrack.activeCues只讀-
一個
TextTrackCueList物件,列出了當前活動的文字軌道提示集。當媒體的當前播放位置介於提示的開始和結束時間之間時,軌道提示是活動的。因此,對於字幕等顯示提示,活動提示正在被顯示。 TextTrack.cues只讀-
一個
TextTrackCueList,其中包含軌道的所有提示。 TextTrack.id只讀-
一個字串,用於標識軌道(如果它有 ID)。如果沒有 ID,則此值為一個空字串 (
"")。如果TextTrack與<track>元素相關聯,則軌道的 ID 與元素的 ID 匹配。 TextTrack.inBandMetadataTrackDispatchType只讀-
返回一個字串,指示軌道的帶內元資料軌道分派型別。
TextTrack.kind只讀-
返回一個字串,指示
TextTrack描述的是哪種型別的文字軌道。它必須是允許的值之一。 TextTrack.label只讀-
一個人類可讀的字串,包含文字軌道的標籤(如果存在);否則,這是一個空字串 (
""),在這種情況下,如果軌道的標籤需要暴露給使用者,您的程式碼可能需要使用軌道的其他屬性生成自定義標籤。 TextTrack.language只讀-
一個字串,指定文字軌道內容的編寫語言。該值必須是有效的 BCP 47 語言標籤,例如,美國英語為
"en-US",巴西葡萄牙語為"pt-BR"。 TextTrack.mode-
一個字串,指定軌道的當前模式,該模式必須是允許的值之一。更改此屬性的值會將軌道的當前模式更改為匹配。預設值為
disabled,除非<track>元素的default布林屬性設定為true— 在這種情況下,預設模式為showing。 sourceBuffer只讀-
建立軌道的
SourceBuffer。如果軌道不是由SourceBuffer建立,或者SourceBuffer已從其父媒體源的MediaSource.sourceBuffers屬性中移除,則返回 null。
例項方法
此介面還繼承了 EventTarget 的方法。
注意:TextTrackCue 介面是一個抽象類,用作其他提示介面(如 VTTCue)的父類。因此,在新增或刪除提示時,您將傳入一個繼承自 TextTrackCue 的提示型別。
TextTrack.addCue()-
將一個提示(指定為
TextTrackCue物件)新增到軌道的提示列表中。 TextTrack.removeCue()-
從軌道的提示列表中刪除一個提示(指定為
TextTrackCue物件)。
事件
cuechange-
當提示進入和退出時觸發。給定的文字提示在進入時出現,在退出時消失。也可透過
oncuechange屬性訪問。
示例
以下示例向影片新增一個新的 TextTrack,然後使用 TextTrack.mode 設定其顯示。
let video = document.querySelector("video");
let track = video.addTextTrack("captions", "Captions", "en");
track.mode = "showing";
規範
| 規範 |
|---|
| HTML # texttrack |
瀏覽器相容性
載入中…