@pixal

Как в input type='range’ сделать прокрутку видео?

Всем привет! Вот примерный код

var video = getElementById(“video”);
var range = getElementById(“range”);

range.setAttrebure(“min”, 0);
range.setAttrebure(“max”, video.duration);

function play(){

var video = getElementById(“video”);
var range = getElementById(“range”);

range.setAttrebute(“value”, video.currentTime)
}

function pos(data){
var video = getElementById(“video”);
var range = getElementById(“range”);
Video.currentTime = data;
}

set_interval(“play”,  1000);


Input

<input id=“range” type=“range” min=“”  max=“”  value=“” oninput=“pos(this.value)” />


Все работает пока я не прокручу видео. После этого ползунок замерает и не реагирует на видео. Подскажите пожалуйста как сделать все это правильно?
  • Вопрос задан
  • 202 просмотра
Пригласить эксперта
Ответы на вопрос 1
Okujava-script
@Okujava-script
Веб-программист с абсолютным слухом и композитор
Если сразу после объявления элемента видео пытаться прочитать продолжительность видео, то браузер не успевает извлечь из видеофайла эту информацию. Чтобы обойти эту ситуацию, достаточно чтение video.duration обернуть функцией onloadeddata или onloadedmetadata. Т. е., строку
range.setAttribute('max', video.duration);
переписать так:
video.onloadeddata = () => range.setAttribute('max', video.duration);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
29 мар. 2024, в 18:19
20000 руб./за проект
29 мар. 2024, в 18:08
2500 руб./за проект
29 мар. 2024, в 17:51
40000 руб./за проект