스와이퍼 기능 관련해서 질문합니다.

🙏SIR UI/UX 디자인 의뢰(~7/31)
스와이퍼 기능 관련해서 질문합니다.

QA

스와이퍼 기능 관련해서 질문합니다.

본문

안녕하세요 스와이퍼 관련해서 질문 좀 드릴려고 합니다.
                <div class="banner-box">

                    <div class="banner_box_inner">

                        <div id="Slider1" class="">

                            <div class="Slider_btn">

                                <div class="btnWrap">

                                    <a href="javascript:void(0);" class="swiper-button swiper-button-prev"><span class="sr_only">이전 슬라이드 가기</span></a>

                                    <a href="javascript:void(0);" class="swiper-button swiper-button-stop" data-name="Slider1"><span class="sr_only">슬라이드 정지</span></a>

                                    <a href="javascript:void(0);" class="swiper-button swiper-button-next"><span class="sr_only">다음 슬라이드 가기</span></a>

                                    <div class="page"></div>

                                </div>

                            </div>

                            <div class="swiper-wrapper" id="mainBanner">

 

                            </div>

                        </div>

                    </div>

                </div>
이런 구조의 html이 있고
 

    var Slider1 = new Swiper("#Slider1", {

        slidesPerView: 1,

        loop: true,

        loopAdditionalSlides : 1,

        autoplay: {delay: 5000},

        pagination: {

            el: ".Slider_btn .page",

            type: "fraction",

        },

        navigation: {

            nextEl: ".Slider_btn .swiper-button-next",

            prevEl: ".Slider_btn .swiper-button-prev",

        },

    });

 

    $(function(){

        $(document).on('click','.swiper-button', function(){

        var $obj = eval($(this).data('name'));

        if($(this).hasClass('swiper-button-stop')){

            $obj.autoplay.stop();

            $(this).find('.sr_only').text('슬라이드 재생');

            $(this).removeClass('swiper-button-stop');

            $(this).addClass('swiper-button-play');

        }else{

            $obj.autoplay.start();

            $(this).find('.sr_only').text('슬라이드 정지');

            $(this).removeClass('swiper-button-play');

            $(this).addClass('swiper-button-stop');

        }

    })
이렇게 스와이퍼 js를 구성했습니다
근데 문제가 생기는 부분은
swiper-pagination1893379372_1748854392.5446.png
저 다음 버튼을 눌렀을때 숫자가 슬라이드 갯수와 상관없이 무한대로 증가합니다.
loop:true 의 옵션때문에 그런것 같은데 
이걸 js로 통제할수 있는 방법이 있을까요?

많이 모자랍니다 잘 부탁드립니다!
알려주시면 열심히 공부해보겠습니다
 

이 질문에 댓글 쓰기 :

답변 1

* realIndex를 활용한 커스텀 pagination (pagination 부분 수정)


var Slider1 = new Swiper("#Slider1", {
    slidesPerView: 1,
    loop: true,
    loopAdditionalSlides: 1,
    autoplay: {delay: 5000},
    pagination: {
        el: ".Slider_btn .page",
        type: "custom",
        renderCustom: function (swiper, current, total) {
            return (swiper.realIndex + 1) + ' / ' + total;
        }
    },
    navigation: {
        nextEl: ".Slider_btn .swiper-button-next",
        prevEl: ".Slider_btn .swiper-button-prev",
    },
});
답변을 작성하시기 전에 로그인 해주세요.
전체 128,834 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT