Value

Text track mode constants

The text track mode—sometimes identified using the IDL enum TextTrackMode—must be one of the following values:

"disabled"

The text track is currently disabled. While the track's presence is exposed in the DOM, the user agent is otherwise ignoring it. No cues are active, no events are being fired, and the user agent won't attempt to obtain the track's cues.

"hidden"

The text track is currently active but the cues aren't being displayed. If the user agent hasn't tried to obtain the track's cues yet, it will do so soon (thereby populating the track's TextTrack.cues property). The user agent is keeping a list of the active cues (in the track's activeCues property) and events are being fired at the corresponding times, even though the text isn't being displayed.

"showing"

The text track is currently enabled and is visible. If the track's cues list hasn't been obtained yet, it will be soon. The activeCues list is being maintained and events are firing at the appropriate times; the track's text is also being drawn appropriately based on the styling and the track's kind.

When the mode is "showing", text tracks are performed differently depending on their kind. In general:

Tracks whose kind is "subtitles" or "captions" are rendered with the cues overlaid over the top of the video.

Tracks whose kind is "descriptions" are presented in a non-visual form (for example, the text might be spoken to describe the action in the video).

Tracks whose kind is "chapters" are used by the user agent or the Web site or Web app to construct and present an interface for navigating the named chapters, where each cue in the list represents a chapter in the media. The user can then navigate to the desired chapter, which begins at the cue's start position and ends at the cue's end position.

1. Before Firefox 52, using JavaScript to change the mode of a text track that's part of a media element would send one change event to the element's textTracks TextTrackList for each change, even if mutliple changes are made in a single pass through the Firefox event loop. Starting in Firefox 52, these changes are reflected by a single event.

Desktop

Mobile

Chrome

Edge

Firefox

Internet Explorer

Opera

Safari

Android webview

Chrome for Android

Edge Mobile

Firefox for Android

Opera for Android

iOS Safari

Samsung Internet

Basic support

Full support
18

Full support
12

Full support
31

Notes

Full support
31

Notes

Notes Before Firefox 52, using JavaScript to change the mode of a text track that's part of a media element would send one change event to the element's textTracks TextTrackList for each change, even if mutliple changes are made in a single pass through the Firefox event loop. Starting in Firefox 52, these changes are reflected by a single event.