leon9208
@leon9208
Начинающий web-developer

Как подружить последоватльно опции Swiper JS swiper.autoplay.stop и swiper.slideToLoop?

Хочу сделать что-то вроде интерактива, но некорректно работает slideToLoop.

Прокручиваем карусель в течении N вермени, я сделал через setTimeout, включаю карусель autoplay.start() и через N время autoplay.stop(), затем slideToLoop().

После autoplay.stop() некорректно срабатывает slideToLoop(), т.е. скролит не до нужного слайда.

const swiper = new Swiper('.swiper', {
	spaceBetween: 10,
	allowTouchMove: false,
	pauseOnMouseEnter: false,
	preventInteractionOnTransition: true,
	disableOnInteraction: true,
	allowSlidePrev: false,
	slidesPerView: 1,
	oneWayMovement: true,
	loop: true,
	speed: 300,
	centeredSlides: true,
	autoplay: {
		delay: 0,
		enabled: false,
	},
	freeMode: {
		enabled: true,
		sticky: false,
	},
});

const changeSlide = (id, info) => {
	swiper.autoplay.start();
	setTimeout(function() {
		swiper.autoplay.stop();
		swiper.slideToLoop(id - 1 , '1500', 
			setTimeout(function() {
				alert(info)
				spinBtn.disabled = false;
			}, 2000)
		)
		}, 3000)
};


Ссылка на карсульку

Буду благодарен за помощь.
  • Вопрос задан
  • 209 просмотров
Решения вопроса 1
Get-Web
@Get-Web Куратор тега JavaScript
Front-End Developer
Если я правильно понял, то как вариант:
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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