Я создал пользовательский слайдер для видео, который перемещается по 4 видео. У меня есть пользовательская кнопка воспроизведения по каждому видео и некоторому оверлейному контенту по каждому из них. При воспроизведении видеоизображения отображаются как содержимое наложения, так и кнопка воспроизведения, и отображаются элементы управления видео по умолчанию. Моя проблема заключается в том, что независимо от того, какая кнопка воспроизведения видео нажата. Он воспроизводит только первое видео в слайдере. Я знаю, что мне нужно настроить таргетинг на кнопку воспроизведения каждого видео и связать ее с этим видео, я просто не могу для жизни понять, как это сделать. Вот мой HTML:Управление HTML5 видео в слайдере
<div class="video-slider">
<div class="main-wrap">
<div class="slides-view">
<div class="slides">
<div class="slide-gallery">
<div class="slide">
<video id="slider-video" poster="">
<source src="" type="" >
</video>
<div class="overlay-content">
</div>
<div class="play">
<a class="play-button"><img src="" /></a>
</div>
</div>
<div class="slide">
<video id="slider-video" loop poster="">
<source src="" type="" >
</video>
<div class="overlay-content">
</div>
<div class="play">
<a class="play-button"><img src="" /></a>
</div>
</div>
<div class="slide">
<video id="slider-video" loop poster="">
<source src="" type="" >
</video>
<div class="overlay-content">
</div>
<div class="play">
<a class="play-button"><img src="" /></a>
</div>
</div>
<div class="slide">
<video id="slider-video" loop poster="">
<source src="" type=">
</video>
<div class="overlay-content">
</div>
<div class="play">
<a class="play-button"><img src="" /></a>
</div>
</div>
</div><!--end slide-gallery-->
</div><!--end slides-->
</div><!--end slides-view-->
</div><!--end main-wrap-->
<div class="slide-arrow left">
<a><img src="/sites/all/themes/merge/img/video-arrow-left.png" /></a>
</div>
<div class="slide-arrow right">
<a><img src="/sites/all/themes/merge/img/video-arrow-right.png" /></a>
</div>
</div><!--end video-slider-->
И мой JavaScript/JQuery:
$(document).ready(function() {
var sliderVideo = document.getElementById('video-slider');
var sliderVideo = $('#slider-video').get(0);
var sliderVideo = $('#slider-video');
var sliderOverlay = $('.video-slider .overlay-content');
$('.play-button').on('click', function() {
sliderVideo[0].play();
sliderOverlay.fadeOut('fast');
$(this).hide()
});
sliderVideo.on('play', function(e) {
$(this).attr('controls', 'true');
})
});
идентификаторы должны быть уникальными ... Используйте класс '.slider-video'. И вы слишком усложнили свой JS и запутались. – blex
Да, это была моя ошибка, слишком много проектов происходит сегодня. Однако ... это не решает мою проблему. Все кнопки воспроизведения по-прежнему воспроизводят только первое видео – JordanBarber
Конечно, вы всегда говорите ему, чтобы играть в первый: 'sliderVideo [0] .play();'. Я делаю скрипт JS. – blex