Слайдер с видео- и другим типом контента: Owl-Carousel, jQuery

Владислав Белецкий
Владислав Белецкий .
Категория:
Комментариев: 0

Задача. Нужно сделать на странице сайта карусель (слайдер) с разным типом контента — видео, текст, вставка видео из Youtube. Такое можно увидеть, например, при отображении блока с отзывами, где один элемент — текстовый, другой — видео.

При использовании разных библиотек для слайдеров появилась еще одна проблема — нельзя включить видео, т.к. при клике на него срабатывает каое-то событие самой карусели и видео не запусалось. Поэтому нужно еще сделать кнопку для видео с сайта. Плюс это позволит использовать свою кнопку вместо стандартной панели управления проигрывателя видео.

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

.carousel_box .item div {position: relative;}
.carousel_box .item {
border: 1px solid #999;
border-radius: 5px;
padding: 10px;
}

.item-video .v_play {
display: block;
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
width: 62px !important;
height: 62px;
margin: auto;
cursor: pointer;
transition: 0.4s;
}
button.v_play:hover {opacity: 0.7;}
.video:hover video + button.v_play.play {opacity: 0.3;}
button.v_play.play {opacity: 0;}

button.v_play {
background-color: transparent;
background-image: url(/wp-content/uploads/2023/08/play.svg);
}

Пример: Карусель с разным типом контента (Текст, видео и вставка видео с Youtube)

Решение. Для создания карусели выбрал js-библиотеку Owl Carousel 2 (также нужен jQuery).

Алгоритм создания карусли (слайдера) из разного типа контента:

  1. Создаем HTML-макет карусели [Код №1.1] и перед самой каруселью подключаем библиотеку Owl-Carousel и jQuery. Если на WordPress, то загружаем файлы Owl-Carousel на сервер и подключаем в functions.php [Код №1.2].
  2. Инициализируем карусель [Код №2]. Тут нужно обернуть блоки в классы owl-carousel owl-theme, чтобы стили применялись, а класс carousel_box может быть любым (можно через id).
  3. Добавляем стили для кастомной кнопки [Код №3]. <button class="v_play"></button> может задаваться разными тегами, но должен идти сразу за видео.
  4. Добавляем JS-скрипт, который будет обрабатывать кнопку воспроизведения видео [Код №4].

Для библиотеки Owl-Carousel нет возможности внешнего подключение — нужно скачать и загрузить к себе на сайт.

Код №1.2: Макет карусели с разным типом контета

Код №1.2: Подключение owl.carousel в WP

Карусель имеет много разных настроек — лучше смотреть на официальном сайте билиотеки.

Код №2: Инициализация слайдера Owl-Carousel

Код №3: CSS-стили кнопки для плеера

Код №4: JavaScript обработчик кастомной кнопки для видео.

See the Pen
Carousel Video Text content by qfurs (@qfurs)
on CodePen.

Пример карусели с разным контентом в Codepen

Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии