У меня есть таб с разными категориями для портфолио, и в каждый из них нужно добавить свой слайдер с своими работами.
Можно ли это сделать не дублируя сразу весь код JS(var swiper = new Swiper) для каждого отдельного слайдера?
var swiper = new Swiper(".slider", {
slidesPerView: 3,
spaceBetween: 30,
init: false,
navigation: {
nextEl: '.swiper-button-next',
prevEl: '.swiper-button-prev',
},
pagination: {
el: ".swiper-pagination",
clickable: true,
},
breakpoints: {
320: {
slidesPerView: 1,
},
990: {
slidesPerView: 1,
},
991: {
slidesPerView: 3,
},
},
});
swiper.on("slideChange afterInit init", function () {
let currentSlide = this.activeIndex + 1;
document.querySelector('.counter').innerHTML = `
<span class="counter__current">
${currentSlide < 10 ? '0' + currentSlide : currentSlide}
</span>
<span class="counter__total">
/${this.slides.length}
</span>`;
});
swiper.init();
HTML структура:
<div class="services__content">
<ul class="tabs" id="portfolio">
<li class="active"><a>Сайты</a></li>
<li><a>SMM</a></li>
<li><a>Контекст</a></li>
<li><a>Брендинг</a></li>
<li><a>Презентация</a></li>
<li><a>Полиграфия</a></li>
</ul>
<div class="tab_container">
<div class="tab_content active"> <!-- Сайты -->
<div class="slider__wrapper">
<div class="swiper slider"> <!-- Слайдер -->
<div class="swiper-wrapper">
<div class="swiper-slide">Слайд</div>
<div class="swiper-slide">Слайд</div>
<div class="swiper-slide">Слайд</div>
<div class="swiper-slide">Слайд</div>
<div class="swiper-slide">Слайд</div>
<div class="swiper-slide">Слайд</div>
</div>
</div>
<div class="swiper-button-prev"></div>
<div class="swiper-button-next"></div>
</div>
</div>
<div class="tab_content"></div> <!-- SMM -->
<div class="tab_content"></div> <!-- Контекст -->
<div class="tab_content"></div> <!-- Брендинг -->
<div class="tab_content"></div> <!-- Презентация -->
<div class="tab_content"></div> <!-- Полиграфия -->
</div>
</div>