Почему в Chrome установлен параметр currentTime видеоэлемента HTML5 reset?
Я хочу установить временную позицию видео в HTML5. Время должно быть установлено так:
function settime(){
var video = document.getElementById("video1");
console.log(video.currentTime); //----->output for example 15.3
video.currentTime = 10.0;
console.log(video.currentTime);//----->>output always 0
}
И видео встраивается так:
<button onclick="settime();">Set Time</button>
<div class="container">
<video id="video1" class="video-js vjs-default-skin" muted>
<source src="video.m4v" type="video/mp4" />
HTML5 Video is required for this example.
</video>
Но по какой-то причине это всегда просто сбрасывает currentTime в 0 в Chrome.
Почему сбрасывается время при установке currentTime? И как правильно установить currentTime?
Ответы
Ответ 1
Я наконец-то понял ответ! Chrome требует, чтобы вы указали currentTime в виде строки, а не числа.
function settime() {
var video = document.getElementById("video1");
console.log(video.currentTime); // output 0
video.currentTime = 10.0;
console.log(video.currentTime); // output 0 for some chrome users or 10 for firefox and others
video.currentTime = "10.0";
console.log(video.currentTime); // output 10
}
settime();
<audio id="video1" src="https://sample-videos.com/audio/mp3/crowd-cheering.mp3" controls></audio>
<div>Click play to start the audio at 10 s.</div>
Ответ 2
Это должно быть
var video = document.getElementById("video1");
поскольку у вас есть
<video id="video1" class="video-js vjs-default-skin" muted>