HTMLMediaElement: свойство currentTime
Базовая Широко поддерживается
Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с июля 2015 года.
Свойство currentTime интерфейса HTMLMediaElement указывает текущее время воспроизведения в секундах.
Изменение значения currentTime переводит воспроизведение медиа на новое время.
Значение
Значение с двойной точностью, указывающее текущее время воспроизведения в секундах.
Если медиа ещё не воспроизводится, значение currentTime указывает позицию во времени в медиа, с которой начнется воспроизведение после вызова метода play().
Установка значения currentTime на новое значение переводит воспроизведение медиа на заданное время, если медиа доступно.
Для медиа без известной длительности — например, для медиа, транслируемого в реальном времени — возможно, что браузер не сможет получить части медиа, которые истекли из буфера медиа. Кроме того, медиа, чья временная шкала не начинается с 0 секунд, нельзя перевести на время до самого раннего момента временной шкалы.
Длительность медиа в секундах можно определить, используя свойство duration.
Примеры
const video = document.createElement("video");
console.log(video.currentTime);
Примечания по использованию
Уменьшенная точность времени
Для защиты от атак на тайминг и отслеживания, точность video.currentTime может быть округлена в зависимости от настроек браузера. В Firefox предпочтительно включено privacy.reduceTimerPrecision по умолчанию и оно имеет значение по умолчанию 2 мс. Также вы можете включить privacy.resistFingerprinting, в этом случае точность будет 100 мс или значение privacy.resistFingerprinting.reduceTimerPrecision.microseconds, что больше.
Например, при уменьшенной точности времени результат video.currentTime всегда будет кратен 0,002, или кратен 0,1 (или privacy.resistFingerprinting.reduceTimerPrecision.microseconds) с включённым privacy.resistFingerprinting.
// reduced time precision (2ms) in Firefox 60 video.currentTime; // Might be: // 23.404 // 24.192 // 25.514 // … // reduced time precision with `privacy.resistFingerprinting` enabled video.currentTime; // Might be: // 49.8 // 50.6 // 51.7 // …
Спецификации
| Спецификация |
|---|
| HTML # dom-media-currenttime-dev |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
currentTime |
3 | 12 | 3.5 | ≤12.1 | 3.1 | 18 | 4 | ≤12.1 | 3 | 1.0 | ≤37 |
См. также
-
HTMLMediaElement: Интерфейс, используемый для определения свойстваHTMLMediaElement.currentTime -
HTMLMediaElement.fastSeek(): Другой способ установки времени -
HTMLMediaElement.duration: Длительность медиа в секундах
© 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/HTMLMediaElement/currentTime