<track>【テキストトラック (Timed text track)】

目次: 概要 構文 DOMインタフェース

概要

メモ

  • テキストトラック 定義
  • <audio>【オーディオ】<video>【ビデオ】内に0個以上定義 (要素内の定義順は、各要素を参照)
  • WebVTT (The Web Video Text Tracks Format) ファイル認識
  • コントロールの  CC  等で字幕の ON・OFF の切替
  • ローカル環境は未サポート

(詳細例:マルチメディア関連サンプル track要素【テキストトラック】)

<video src="~.mp4" width="320" height="180" controls>
  <track kind="captions" src="~.vtt" label="字幕">
  【未サポート】
</video>
【字幕ファイル (~.vtt)】
WEBVTT FILE

1
00:00:00.000 --> 00:00:15.000
00:00 ~ 00:14 の字幕

2
00:00:15.000 --> 00:00:30.000
00:15 ~ 00:29 の字幕

3
00:00:30.000 --> 00:00:45.000
00:30 ~ の字幕

15 秒毎に字幕変更 (  CC  等で字幕 ON)

映像:NHKクリエイティブ・ライブラリー (音声なし)

関連要素

外部リンク

構文

<track必須開始タグ
defaultデフォルト指定
kind=subtitles | captions | descriptions | chapters | metadata テキストトラックの種類
(subtitles(翻訳字幕) | captions(字幕) | descriptions(説明) | chapters(チャプター) | metadata(スクリプトが使用するトラック情報))
label=【ラベルテキスト】切替用ラベル
src=【リソースのURL】 必須 リソースのURL
WebVTT (The Web Video Text Tracks Format)指定可 W3CMDN
srclang=【BCP 47 言語タグ】テキストトラックの言語 (kind属性がsubtitles(字幕)の場合、必須) 例:"ja"・"ja-JP"

【グローバル属性】

accesskey=【アクセスキー (複数:半角スペース区切り)】アクセスキー
class=【クラス名 (複数:半角スペース区切り)】 所属クラス (複数指定:<style>【スタイル情報】)・外部スタイルシートで後から定義したほうが優先
contenteditable [ ="" (可能) | true (可能) | false (不可) | inherit (親要素継承) ]編集可否
contextmenu=<menu>【メニュー】 のid コンテキストメニューのid
data-*=【カスタムデータ】 カスタムデータ属性
dir=ltr (左から右) | rtl (右から左) | auto (自動) 文字表記方向 (ltr:left to right text or table / rtl:right to left text or table)
<bdo>【テキスト方向形式】の場合、ltr または rtlが必須
draggable=true (ドラッグ可能) | false (ドラッグ不可) | auto (ブラウザ既定) ドラッグ可否
dropzone=copy (ドロップデータのコピー) | move (ドロップデータを移動) | link (ドロップデータのリンク)
ドロップデータの扱い
hidden非表示
id=【id】id (ドキュメント中で一意 name【コントロール名 (送信データ名)】を含む)
(<a>【ハイパーリンク】のリンク先・CSS対象(#~)・スクリプト参照)
is=【定義名】定義名
itemid=【URL】アイテムのグローバル識別子
itemprop=【アイテムのプロパティ (複数:半角スペース区切り)】 アイテムのプロパティ
itemref=【要素IDのリスト】アイテムの参照リスト
itemscopeアイテムのプロパティ宣言
itemtype=【アイテムの型 (複数:半角スペース区切り)】アイテムの型
lang=【言語コード】言語コード (【主コード】-【副コード】 例:"ja":日本語 / "en":英語 / "en-US":アメリカ英語)
slot=<slot>【スロット】のname属性スロット名
spellcheck=true | falseスペルチェック有無
style=【スタイルシート (複数:セミコロン区切り / 最後のセミコロンは省略可)】スタイル
tabindex=【タブインデックス番号】タブインデックス
title=【説明文】説明 (多くはツールチップ表示)
<link>【メタデータリンク】:メタデータリンクのタイトル
<style>【スタイル情報】:スタイルシート名
translate="" (翻訳対象) | yes (翻訳対象) | no (翻訳対象外)翻訳可否
>

DOMインタフェース (HTMLTrackElement・HTMLElement)

interface HTMLTrackElement : HTMLElement { W3C:interface HTMLTrackElement (英語)

【プロパティ】

HTMLTrackElement プロパティ】

default;デフォルト指定
kind;テキストトラックの種類
label;切替用ラベル
attribute unsigned shortreadyState;準備状態 (NONE / LOADING / LOADED / ERROR)
src;リソースのURL
srclang;テキストトラックの言語
attribute TextTracktrack;テキストトラック

HTMLElement プロパティ】W3C:interface HTMLElement (英語) HTML 5.1HTML 5.2WHATWG

accessKey;アクセスキー
accessKeyLabel;アクセスキー表現文字列
contentEditable;編集可能状態 ("true":編集可能 / "false":編集不可 / "inherit":親要素継承)
Mapdataset;カスタムデータ属性 (data-*) マップ
dir;文字表記方向 ("ltr":左から右 / "rtl":右から左)
draggable;ドラッグ可否
[PutForwards=value] attribute DOMTokenListdropzone;ドロップデータの扱い
hidden;非表示状態
[TreatNullAs=EmptyString]innerText;内容 (テキスト形式)
isContentEditable;編集可否
lang;言語コード
spellcheck;スペルチェック有無
attribute longtabIndex;タブインデックス
title;説明
translate;翻訳可否

ElementCSSInlineStyle プロパティ】 HTMLElement implements ElementCSSInlineStyle; W3C:interface ElementCSSInlineStyle (英語)

attribute CSSStyleDeclarationstyle;スタイル

CSSStyleDeclaration プロパティ】 (仕様上、次と同等: CSSStyleDeclaration implements CSS2Properties) W3C:Interface CSS2Properties (英語)

style.~;スタイル属性 (例:style.color・style.backgroundColor)

Element プロパティ】interface HTMLElement : Element W3C:Interface Element (英語) HTML 5.1HTML 5.2WHATWG

[SameObject] attribute NamedNodeMapattributes;関連属性 マップ
[SameObject] attribute DOMTokenListclassList;クラス名 リスト
className;クラス名
id;id (ページ内で一意:name【コントロール(送信)名】を含む)
(innerHTML;)内容 (HTML形式) W3C:未定義 (参照:Element.outerHTMLNode.textContent (innerText))
localName;ローカル名
?namespaceURI;ネームスペースURI
(outerHTML;)タグを含む内容 (HTML形式) W3C:未定義 (参照:Element.innerHTMLNode.textContent (innerText))
?prefix;プリフィックス
tagName;タグ名

Node プロパティ】 interface Element : Node W3C:Interface Node (英語) HTML 5.1HTML 5.2WHATWG

?baseURI;ベースURI
[SameObject] childNodes;子ノード リスト
?firstChild;先頭子ノード
?lastChild;最終子ノード
?nextSibling;次の兄弟ノード
nodeName;ノード名
attribute unsigned shortnodeType;ノードタイプ
(ELEMENT_NODE / ATTRIBUTE_NODE / TEXT_NODE / CDATA_SECTION_NODE / ENTITY_REFERENCE_NODE / ENTITY_NODE / PROCESSING_INSTRUCTION_NODE / COMMENT_NODE / DOCUMENT_NODE / DOCUMENT_TYPE_NODE / DOCUMENT_FRAGMENT_NODE / NOTATION_NODE)
?nodeValue;ノード値
?ownerDocument;オーナードキュメント
?parentElement;親エレメント
?parentNode;親ノード
?previousSibling;前の兄弟ノード
?textContent;
(IE:innerText)
内容 (Text形式) (参照:Element.innerHTMLElement.outerHTML)
取得:要素内のHTMLタグを除外しテキストのみ
設定:HTMLタグはテキスト変換

GlobalEventHandlers プロパティ (一部) 】 HTMLElement implements GlobalEventHandlers; W3C:interface GlobalEventHandlers (英語) HTML 5.1HTML 5.2WHATWG

attribute EventHandler onabort;on~;イベントハンドラ (例:onclick・onfocus)

ParentNode プロパティ】Element implements ParentNode; W3C:Interface ParentNode (英語)

attribute unsigned longchildElementCount;子エレメントの数
[SameObject] attribute HTMLCollectionchildren;子エレメント コレクション
?firstElementChild;最初の子エレメント
?lastElementChild;最後の子エレメント

NonDocumentTypeChildNode プロパティ】Element implements NonDocumentTypeChildNode; W3C:Interface NonDocumentTypeChildNode (英語)

?previousElementSibling;前の兄弟エレメント
?nextElementSibling;次の兄弟エレメント

【メソッド】

HTMLElement メソッド】W3C:interface HTMLElement (英語) HTML 5.1HTML 5.2WHATWG

void click();クリック 操作
void focus();フォーカス設定 操作
void forceSpellCheck();スペルチェック
void blur();フォーカス喪失 操作

Element メソッド】interface HTMLElement : Element W3C:Interface Element (英語)

? getAttribute( name);属性取得
? getAttributeNS(? namespace, localName);属性取得 (ネームスペース指定)
HTMLCollection getElementsByClassName( classNames);エレメント コレクション取得 (クラス名指定)
HTMLCollection getElementsByTagName( localName);エレメント コレクション取得 (タグ名指定)
HTMLCollection getElementsByTagNameNS(? namespace, localName);エレメント コレクション取得 (ネームスペース・タグ名指定)
boolean hasAttribute( name);属性チェック
boolean hasAttributeNS(? namespace, localName);属性チェック (ネームスペース指定)
void removeAttribute( name);属性削除
void removeAttributeNS(? namespace, localName);属性削除 (ネームスペース指定)
void setAttribute( name, value);属性設定
void setAttributeNS(? namespace, name, value);属性設定 (ネームスペース指定)

Node メソッド】 interface Element : Node W3C:Interface Node (英語)

Node appendChild(Node node);子ノード追加
[NewObject] Node cloneNode(optional boolean deep = false);クローンノード作成
unsigned short compareDocumentPosition(Node other);他ノードとの位置比較
(DOCUMENT_POSITION_DISCONNECTED / DOCUMENT_POSITION_PRECEDING / DOCUMENT_POSITION_FOLLOWING / DOCUMENT_POSITION_CONTAINS / DOCUMENT_POSITION_CONTAINED_BY / DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC)
boolean contains(Node? other);指定子孫ノードの存在有無
boolean hasChildNodes();子ノードの存在有無
Node insertBefore(Node node, Node? child);指定ノード前挿入
boolean isDefaultNamespace(? namespace);デフォルトネームスペース チェック
boolean isEqualNode(Node? node);同一ノードチェック
? lookupNamespaceURI(? prefix);ネームスペースURI調査
? lookupPrefix(? namespace);ネームスペース プリフィックス調査
void normalize();標準化
Node removeChild(Node child);子ノード削除
Node replaceChild(Node node, Node child);子ノード置換

ParentNode メソッド】Element implements ParentNode; W3C:Interface ParentNode (英語)

Element? querySelector( selectors);指定セレクタ先頭エレメント取得
[NewObject] NodeList querySelectorAll( selectors);指定セレクタ ノードリスト取得

ChildNode メソッド】Element implements ChildNode; W3C:Interface ChildNode (英語)

void remove();削除
};

interface TextTrack : EventTarget { W3C:TextTrack (英語)

【プロパティ】

TextTrack プロパティ】

attribute TextTrackCueList?activeCues;アクティブキュー リスト
attribute TextTrackCueList?cues;キュー リスト
id;id
inBandMetadataTrackDispatchType;インバンドメタデータトラックディスパッチタイプ
attribute TextTrackKindkind;テキストトラックの種類 ("subtitles" / "captions" / "descriptions" / "chapters" / "metadata")
label;ラベル
language;言語
attribute TextTrackModemode;トラックモード ("disabled" / "hidden" / "showing")
attribute EventHandleroncuechange;

【メソッド】

TextTrack メソッド】

void addCue(TextTrackCue cue);キュー追加
void removeCue(TextTrackCue cue);キュー削除
};