Если видео = длительность, остановка и перемотка назад

Я делаю видеопроигрыватель HTML5. Я хочу, чтобы, когда фильм останавливается, воспроизведение выполнялось

video.pause();
video.currentTime=0;
document.getElementById('message').innerHTML="Finished";

Я пробовал это, но это не сработало

function rewsi() {
var video = document.getElementsByTagName('video')[0];
if (video.currentTime==video.duration) {
    video.pause();
    video.currentTime=0;
    document.getElementById('message').innerHTML="Finished";
}

}

У кого-нибудь есть решение этой проблемы? Проблема = Мое незнание JavaScript


person Jeremy Karlsson    schedule 09.04.2011    source источник


Ответы (2)


Рассмотрим следующий вопрос и ответ:

Обратные вызовы HTML5 ‹video›?

Я бы назначил обратный вызов, который будет выполняться, когда видео действительно закончится следующим образом:

var Media = document.getElementsByTagName('video')[0];
var Message = document.getElementById('message');

Media.bind('ended',function(){
     Message.innerHTML = "The media file has completed";
});

Вы также заявили, что, когда СМИ «останавливаются», вы хотите приостановить видео, можете ли вы описать свои мотивы для этого?

Следующим по повестке дня является сброс видео как таковой, похоже, вы хотите установить положение носителя в начале, если медиа останавливается, вы должны сначала убедиться, что вы определяете, что видео не было приостановлено, как вы это делаете не хочу сбрасывать позицию, если пользователь пошел делать чашку кофе.

Если вы хотите установить позицию мультимедиа только тогда, когда фильм фактически закончился, это было бы бессмысленно (если у вас нет веской причины для этого), причина, по которой это было бы бессмысленно, заключается в том, что когда пользователь нажимает кнопку воспроизведения после того, как фильм закончился, По умолчанию медиаплеер html5 устанавливает позицию на 0.

Приведенное выше решение должно сработать именно для вас.

Я рекомендую использовать Kaltura HTML5 Video Library, чтобы помочь вам управлять медиаплеером.

person RobertPitt    schedule 09.04.2011
comment
javascript не имеет определенного значения остановки, поэтому просто чтобы убедиться, что он останавливается - person Jeremy Karlsson; 10.04.2011
comment
в любом случае, вы должны быть уверены, что правильно читаете текущее состояние носителя. - person RobertPitt; 10.04.2011
comment
хм ты что-то там сказал: P - person Jeremy Karlsson; 10.04.2011

Во-первых, вы можете проверить, закончилось ли видео, просто поставив условие на video.ended. Затем вы можете установить время с помощью this.currentTime(0);

person Agos    schedule 09.04.2011
comment
я не мог заставить это работать, я попробовал эту функцию endBeg () {var video = document.getElementsByTagName ('video') [0]; var end = video.ended; если (конец) {this.pause (); this.currentTime = 0; }} - person Jeremy Karlsson; 10.04.2011