Joywork/promo/js/lw-swiper.js

115 lines
2.9 KiB
JavaScript
Raw Normal View History

2026-05-22 20:21:54 +02:00
document.addEventListener("DOMContentLoaded", function () {
const headSwiper = document.querySelector(".lw-head-swiper");
if (headSwiper) {
new Swiper(".lw-head-swiper", {
// Optional parameters
loop: true,
speed: 1000,
spaceBetween: 20,
slidesPerView: 1,
autoplay: true,
navigation: {
prevEl: ".swiper-button-prev",
nextEl: ".swiper-button-next",
},
});
}
const tariffSwiper = document.querySelector(".lw-swiper-tariff");
if (tariffSwiper) {
let slidesCount = document.querySelectorAll(
".lw-swiper-tariff .swiper-slide"
).length;
const test = new Swiper(".lw-swiper-tariff", {
speed: 1000,
spaceBetween: 20,
slidesPerView: "auto",
navigation: {
prevEl: ".lw-slider-tariff-btn-prev",
nextEl: ".lw-slider-tariff-btn-next",
},
pagination: {
el: ".lw-swiper-tariff__pagination",
clickable: true,
dynamicBullets: slidesCount > 3 ? true : false,
dynamicMainBullets: 1,
},
});
}
const reviewMainSlider = document.querySelector(".lw-slider-reviews");
if (reviewMainSlider) {
const slidesArr = document.querySelectorAll(
".lw-slider-reviews .swiper-slide"
);
slidesArr.forEach((slide, index) => {
slide.setAttribute("data-id", index);
});
const reviewMainSlider = new Swiper(".lw-slider-reviews", {
spaceBetween: 20,
slidesPerView: "auto",
navigation: {
prevEl: ".lw-slider-reviews-btn-prev",
nextEl: ".lw-slider-reviews-btn-next",
},
});
const reviewThumbsSlider = new Swiper(".lw-swiper-slider-popup", {
spaceBetween: 20,
slidesPerView: 1,
autoHeight: true,
navigation: {
prevEl: ".lw-slider-popup-btn-prev",
nextEl: ".lw-slider-popup-btn-next",
},
pagination: {
el: ".lw-slider-popup__pagination",
clickable: true,
dynamicBullets: true,
},
});
// openers
const reviewSliderPopupOpeners = document.querySelectorAll(
".lw-review-card__more-btn"
);
if (reviewSliderPopupOpeners) {
const reviewSliderPopup = document.querySelector(".lw-slider-popup");
const reviewSliderPopupCloser = document.querySelector(
".lw-slider-popup-closer"
);
reviewSliderPopupOpeners.forEach((btn) => {
btn.addEventListener("click", function () {
reviewSliderPopup.classList.add("active");
const id = btn.closest(".swiper-slide").getAttribute("data-id");
reviewThumbsSlider.slideTo(id, 0);
});
});
if (reviewSliderPopupCloser) {
reviewSliderPopupCloser.addEventListener("click", function () {
reviewSliderPopup.classList.remove("active");
const currentSlide = reviewThumbsSlider.realIndex;
reviewMainSlider.slideTo(currentSlide, 0);
});
}
}
}
});