This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The kind property of the HTMLTrackElement interface represents the type of track, or how the text track is meant to be used. It reflects the <track> element's enumerated kind attribute.
If no kind is set, subtitles is used. If the attribute is not set to one of the valid enumerated values, it is invalid and metadata is used. Other valid values include captions, descriptions, and chapters.
A string; lowercase captions, descriptions, chapters, subtitles or metadata.
Given the following:
<track src="track.vtt" id="exampleTrack" />
We get the following results:
const trackElement = document.getElementById("exampleTrack");
// missing value
console.log(trackElement.kind); // "subtitles"
trackElement.kind = "INVALID";
// invalid value
console.log(trackElement.kind); // "metadata"
trackElement.kind = "CAPTIONS";
// valid value
console.log(trackElement.kind); // "captions"
| Specification |
|---|
| HTML> # dom-track-kind> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
kind |
23 | 12 | 31 | 12 | 6 | 25 | 31 | 12 | 6 | 1.5 | 4.4 | 6 |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/HTMLTrackElement/kind