2015-11-10 2 views
1

У меня есть этот JS-код:Перебор видео в HTML5

video_count =1; 
videoPlayer = document.getElementById("homevideo"); 

function run(){ 
    video_count++; 
    if (video_count == 4) video_count = 1; 
    var nextVideo = "app/video"+video_count+".mp4"; 
    videoPlayer.src = nextVideo; 
    videoPlayer.play(); 
}; 

и у меня есть два видео, я хочу играть один за другим. Видео воспроизводятся нормально - сначала один, а после окончания второго, но этот кодовый цикл через второе видео вместо повторного воспроизведения первого видео и после окончания второго видео и т. Д.

Помогите пожалуйста?

Спасибо заранее, Янов

+0

Попробуйте 'video_count ++' под '.play()' –

+0

Извините, это не сработало – Yanivn78

ответ

2

Используйте ended событие, чтобы вызвать функцию run снова.

video_count =1; 
videoPlayer = document.getElementById("homevideo"); 
function run(){ 
    if (video_count == 4) video_count = 1; 
    var nextVideo = "app/video"+video_count+".mp4"; 
    videoPlayer.src = nextVideo; 
    videoPlayer.play(); 
    video_count++; 
}; 
videoPlayer.addEventListener('ended', run); 
-1
video_count =1; 
videoPlayer =  document.getElementById("homevideo"); 

function run(){ 
    if (video_count > 2) video_count = 1; 
    var nextVideo = "app/video"+video_count+".mp4"; 
    videoPlayer.src = nextVideo; 
    videoPlayer.play(); 
    video_count++; 
}; 

решит проблему Вы увеличить переменную прежде чем определить имя файла видео-ролик, так что вы начинаете с два ... условия необходимо изменить, а также, поскольку мы хотим установить videocount to 1 только после отображения второго видео

+0

Я боюсь, что он все еще не работает. Может быть, проблема связана с var nextVideo? Когда я объявляю путь (например) "http://www.youtube.com/12345", а затем + video_count + ". Mp4"; - второе видео не играет вообще - у меня вместо этого черный экран. Второе видео воспроизводится только при объявлении var nextVideo = "http://www.youtube.com/12345" ... – Yanivn78

+0

Это не то, что пытается достичь @YanivNoodelman. Он пытается создать петлю плейлиста, где за «n» за видео следует «n + 1». См. Мой ответ для рабочего решения. – Oleander

+0

Уважаемый @ Oleander, Не могли бы вы посоветовать, как создать JS-код для воспроизведения другого типа одного и того же видео в случае, если браузер не поддерживает тип, определенный как значение по умолчанию? например, если не поддерживать .mp4, воспроизводите то же самое vidwo с типом .webm. – Yanivn78