[JavaScript] Swiper 페이징(pagination) 2개 사용하기
Lpla
·2021. 10. 15. 23:15
1. 들어가며
오늘 동료 직원이 하나의 Swiper에 2개의 페이징을 사용할 수 있는지 질문했다.
구현하고자 하는 결과물은 아래와 같았다.
2. 페이징(Pagination)?
Page + (i)tion
API에 따라서 페이징(Paging) 혹은 페이지네이션(Pagination) 이라고 칭하는 이것은 요소의 개수를 나타내주는 UI를 말한다. (파기, 파지, 패지네이션이 아니다)
가장 흔한 페이징은 게시판의 하단에 있는 숫자들이다.
각설하고 Swiper의 페이징은 총 네 가지가 있다.
그리고 페이징에 포함되지 않지만 거의 같은 기능으로 Scrollbar가 있다.
Swiper 페이징은 다음 코드로 추가할 수 있지만 오직 하나의 타입 밖에 사용할 수 없다.
const swiper = new Swiper('.swiper', {
pagination: {
el: '.swiper-pagination',
type: 'bullets',
},
});
3. 해답
사실 이 질문에 대한 해답은 이전에 포스팅한 적이 있다.
원리는 간단하다.
Swiper가 총 2개 필요한데 하나는 메인이 되는 Swiper로, 슬라이드와 페이징 하나(위 예제에서는 Fraction 혹은 Progressbar)를 실행하고
나머지 하나는 다른 페이징 형태 하나를 실행한다.
그리고 controller로 메인 Swiper가 서브 Swiper를 제어하도록 한다.
See the Pen Swiper - double pagination by lpla (@lpla) on CodePen.