@denism300

Как в swiper slider сделать бесконечный thumbnail?

Как сделать, чтобы превьюшка выглядела как на картинке? Пробовал по разному, но слева от первого слайде при инициализации всегда пусто, а надо, чтобы там был последний слайд, еще левее предпоследний и т.п.
Версия swiper 11.0.5
ChatGPT ничем не помог.
657186a969733660738531.png
var mainSlider = new Swiper('.gallery-swiper', {
                            loop: true,
                            slidesPerView: 1,
                            spaceBetween: 10,
                            navigation: {
                                nextEl: '.swiper-button-next',
                                prevEl: '.swiper-button-prev',
                            },
                            pagination: {
                                el: '.swiper-pagination',
                                clickable: true,
                            },
                        });

                        var previewSlider = new Swiper('.gallery-swiper--thumb', {
                            slidesPerView: 5,
                            spaceBetween: 10,
                            centeredSlides: true,
                            loop: true,
                            slideToClickedSlide: true,
                        });
  • Вопрос задан
  • 311 просмотров
Пригласить эксперта
Ответы на вопрос 2
@Clutkaboltwm
Как минимум вам их нужно связать между собой.
6572bbd6b6710293111584.png
Ответ написан
@salomatin
Я понимаю что наверное поздно уже, но может кому поможет.

1) Обязательно используйте Swiper не ниже 6.8.4 (я использовал именно версию 6.8.4)
Пример нашел тут, он почти совпадает с тем что требовалось в вопросе, только стили подкорректировать https://codepen.io/intotheprogram/pen/PowvWeX
<div class="gallery"> 
				<div class="swiper swiper-container gallery-thumbs">
					<div class="swiper-wrapper">
						<div class="swiper-slide"><img src="https://into-the-program.com/demo/images/sample010.jpg" alt=""></div>
						<div class="swiper-slide"><img src="https://into-the-program.com/demo/images/sample005.jpg" alt=""></div>
						<div class="swiper-slide"><img src="https://into-the-program.com/demo/images/sample012.jpg" alt=""></div>
						<div class="swiper-slide"><img src="https://into-the-program.com/demo/images/sample007.jpg" alt=""></div>
						<div class="swiper-slide"><img src="https://into-the-program.com/demo/images/sample008.jpg" alt=""></div>
						<div class="swiper-slide"><img src="https://into-the-program.com/demo/images/sample009.jpg" alt=""></div>
					</div>
				</div>
				<div class="swiper swiper-container gallery-slider">
					<div class="swiper-wrapper">
						<div class="swiper-slide"><img src="https://into-the-program.com/demo/images/sample010.jpg" alt=""></div>
						<div class="swiper-slide"><img src="https://into-the-program.com/demo/images/sample005.jpg" alt=""></div>
						<div class="swiper-slide"><img src="https://into-the-program.com/demo/images/sample012.jpg" alt=""></div>
						<div class="swiper-slide"><img src="https://into-the-program.com/demo/images/sample007.jpg" alt=""></div>
						<div class="swiper-slide"><img src="https://into-the-program.com/demo/images/sample008.jpg" alt=""></div>
						<div class="swiper-slide"><img src="https://into-the-program.com/demo/images/sample009.jpg" alt=""></div>
					</div>
					<div class="swiper-button-prev"></div>
					<div class="swiper-button-next"></div>
				</div>
			</div>


var slider = new Swiper ('.gallery-slider', {
			slidesPerView: 1,
			centeredSlides: true,
			loop: true,
			loopedSlides: 3, 
			navigation: {
				nextEl: '.swiper-button-next',
				prevEl: '.swiper-button-prev',
			},
		});

		var thumbs = new Swiper ('.gallery-thumbs', {
			slidesPerView: 3,
			spaceBetween: 60,
			centeredSlides: true,
			loop: true,
			slideToClickedSlide: true,
		});

		slider.controller.control = thumbs;
		thumbs.controller.control = slider;


В моем примере миниатюры по 3 шт в ряд, и галерея после миниатюр. Но код точно рабочий, думаю под ваши нужды не составит труда допилить. Главное что при переключении слайдов или миниатюр, выбирается центральная и все корректно работает
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы