Swiper — движок перелистывания Framework: он сдвигает ряд слайдов по кнопкам,
клавишам и вызовам из скрипта. Движок не оформляет слайды и не выбирает
поведение за проект. Для готовых переключателей, пагинации и автопрокрутки
берите карусель.
Минимальную разметку показывает пример выше. Части вложены так: корень
swiper → лента swiper-wrapper → слайды swiper-slide.
swiper обрезает ленту по своей ширине; swiper-wrapper выстраивает слайды
в строку и сдвигается при перелистывании; каждый swiper-slide по
умолчанию занимает всю ширину корня.
Кнопки перелистывания — обычные кнопки Framework в любом месте страницы;
движку их передают в параметрах. На первом и последнем слайде кнопка
получает класс swiper-button-disabled и приглушается.
Промежуток между слайдами задают отступы внутри слайда (p-x-1), а не поле
между ними.
Разметка сама не перелистывается: каждый корень создают явно через
new Swiper(root, options).
Варианты
Число видимых слайдов
Параметр slidesPerView задаёт, сколько слайдов видно сразу, а
breakpoints меняет его по ширине окна: ключи — минимальная ширина окна в
пикселях. Движок читает breakpoints при создании и при вызове update(),
поэтому при изменении ширины окна вызывайте update() сами.
Корню дайте role="region" и доступное имя через aria-label, а
tabindex="0" — если включено управление клавишами.
Движок помечает слайды role="group" и именем «1 / 3», а скрытые слайды —
aria-hidden="true". Ссылки и кнопки в скрытых слайдах остаются в порядке
фокуса: если они есть, берите карусель — она делает скрытые слайды inert.
При параметре keyboard: true стрелки влево и вправо перелистывают слайды,
пока фокус внутри корня, с учётом направления письма.
Жестов смахивания движок не обрабатывает: на сенсорном экране нужны видимые
кнопки.
При системной настройке уменьшения движения CSS убирает анимацию ленты;
передайте и speed: 0.
JavaScript
window.Swiper — конструктор движка. Он появляется, когда скрипт компонента
выполнен; карусель Framework ждёт его сама.
Параметры:
Параметр
Что задаёт
slidesPerView
число видимых слайдов, по умолчанию 1
breakpoints
параметры по минимальной ширине окна
initialSlide
номер первого показанного слайда, с нуля
speed
длительность сдвига в миллисекундах, по умолчанию 300
loop
после последнего слайда перейти к первому
keyboard
true — перелистывание стрелками
navigation
prevEl, nextEl (элемент или селектор), disabledClass
pagination
el, clickable, bulletElement, bulletClass, bulletActiveClass — точки по числу слайдов; своего оформления у точек нет, его задают классы
autoplay
{delay} — перелистывать сам каждые delay миллисекунд
Методы экземпляра: slideNext(), slidePrev(), slideTo(index),
update() — после добавления или удаления слайдов и при смене ширины окна,
enable() и disable(), autoplay.start() и autoplay.stop(),
destroy() — снимает обработчики и стили. Свойства activeIndex и slides
дают текущий слайд и список слайдов. События подключает on(name, listener):
init, slideChange, transitionEnd, autoplayStart, autoplayStop,
destroy; обработчик получает экземпляр.
После изменения набора слайдов вызывайте update() у уже созданного
экземпляра — второй экземпляр поверх первого не создавайте.