Spec-Zone.ru › Web APIs

Текст-дорожка: свойство mode

Базовая поддержка Широко доступна

Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с июля 2015 года.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Свойство mode интерфейса TextTrack — это строка, определяющая и контролирующая режим текстовой дорожки: disabled, hidden, или showing. Вы можете прочитать это значение, чтобы определить текущий режим, и изменить его для переключения режимов.

Браузер Safari дополнительно требует, чтобы атрибут default был установлен в значение true при реализации собственных элементов управления проигрывателем видео, чтобы подписи отображались.

Значение

Строка, которая указывает текущий режим дорожки. Один из следующих:

disabled

Текстовая дорожка в настоящее время отключена. Хотя присутствие дорожки отображается в DOM, пользовательский агент игнорирует ее. Ни один фрагмент не активен, не генерируются события, и пользовательский агент не попытается получить фрагменты дорожки. Это значение по умолчанию, если у текстовой дорожки нет атрибута default Boolean, в противном случае значение по умолчанию showing.

hidden

Текстовая дорожка активна, но фрагменты не отображаются. Если пользовательский агент еще не пытался получить фрагменты дорожки, он сделает это в ближайшее время (тем самым заполняя свойство TextTrack.cues дорожки). Пользовательский агент сохраняет список активных фрагментов (в свойстве activeCues дорожки), и события генерируются в соответствующие моменты времени, даже если текст не отображается.

showing

Текстовая дорожка включена и видима. Если список фрагментов дорожки еще не получен, он будет получен в ближайшее время. Список activeCues поддерживается, и события генерируются в соответствующие моменты времени; текст дорожки также отображается должным образом в зависимости от стилей и kind дорожки. Это значение по умолчанию, если атрибут default текстовой дорожки указан.

Примечания к использованию

Значение по умолчанию для mode равно disabled, если не указан атрибут default Boolean, в противном случае значение по умолчанию для mode равно showing. Когда текстовая дорожка находится в состоянии disabled, соответствующий файл WebVTT не загружается до тех пор, пока состояние не изменится на showing или hidden. Таким образом, загрузка ресурса и использование памяти предотвращаются, если фрагменты фактически не нужны.

Однако, это означает, что если вы хотите выполнить какие-либо действия, связанные с фрагментами дорожки, например, при обработке события load, — для обработки некоторых аспектов фрагментов при загрузке страницы — и режим дорожки изначально disabled, вам нужно изменить mode на hidden или showing для инициирования загрузки фрагментов.

Когда режим showing, выполняются операции с текстовыми дорожками. Точное отображение и порядок выполнения зависят от kind каждой текстовой дорожки. В общем:

  • Дорожки, у которых kind равно "subtitles" или "captions", отображаются с фрагментами, наложенными поверх видео.
  • Дорожки, у которых kind равно "descriptions", представлены в невизуальной форме (например, текст может быть озвучен для описания действия в видео).
  • Дорожки, у которых kind равно "chapters", используются пользовательским агентом, сайтом или веб-приложением для создания и отображения интерфейса для навигации по именованным разделам, где каждый фрагмент в списке представляет собой раздел в медиа. Пользователь может перейти к нужному разделу, который начинается с начальной позиции фрагмента и заканчивается конечной позицией фрагмента.

Пример

В этом примере мы настраиваем фрагменты текстовой дорожки так, чтобы каждый раз при завершении фрагмента видео автоматически приостанавливалось воспроизведение. Это делается путем установки свойства pauseOnExit каждого фрагмента в true. Однако, чтобы убедиться, что фрагменты дорожки доступны, мы сначала устанавливаем mode в showing.

window.addEventListener("load", (event) => {
  let trackElem = document.querySelector("track");
  let track = trackElem.track;

  track.mode = "showing";

  for (const cue of track.cues) {
    cue.pauseOnExit = true;
  }
});

Спецификации

Спецификация
HTML
# dom-texttrack-mode-dev

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на IOS Samsung Internet WebView Android
mode 23 12
31До Firefox 52, при использовании JavaScript для изменения режима текстовой дорожки, которая является частью элемента медиа, отправлялось одно событие изменения в TextTrackList элемента textTracks за каждое изменение, даже если несколько изменений выполняются в одном проходе через цикл событий Firefox. Начиная с Firefox 52, эти изменения отражаются в одном событии.
≤12.1 6 25 31 ≤12.1 7 1.5 4.4

См. также

  • WebVTT
  • TextTrack
  • TextTrackList
  • TextTrackCueList
  • VTTCue
  • <track>
  • HTMLTrackElement

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/TextTrack/mode

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API