Две навигации в два слайдера - PullRequest
0 голосов
/ 20 марта 2020

Здравствуйте, я использую бегунок для большого пальца. Оба слайдера верха галереи имеют навигацию. Также есть навигация по ползункам в галерее. Я не могу запустить их синхронно. Потому что, когда я добавляю навигацию в ползунок галереи большого пальца, классы swiper-button-next и swiper-button-prev отключаются. Как я могу решить эту проблему

- >> HTML КОД

<div class="swiper-container news-detail-slider gallery-top" >
    <div class="swiper-wrapper">
        <div class="swiper-slide">
            <a href="javascript:;">
                <picture>
                <!--[if IE 9]><video style="display: none"><![endif]-->
                <source srcset="temp/753x510.jpg" media="(min-width: 768px)">
                <!--[if IE 9]></video><![endif]-->
                <img src="temp/.jpg" data-loadmode="0" alt=""><!-- mobile -->
                </picture>
            </a>
        </div>
        <div class="swiper-slide">
            <a href="javascript:;">
                <picture>
                <!--[if IE 9]><video style="display: none"><![endif]-->
                <source srcset="temp/753x510.jpg" media="(min-width: 768px)">
                <!--[if IE 9]></video><![endif]-->
                <img src="temp/.jpg" data-loadmode="0" alt=""><!-- mobile -->
                </picture>
            </a>
        </div>
                <div class="swiper-slide">
            <a href="javascript:;">
                <picture>
                <!--[if IE 9]><video style="display: none"><![endif]-->
                <source srcset="temp/753x510.jpg" media="(min-width: 768px)">
                <!--[if IE 9]></video><![endif]-->
                <img src="temp/.jpg" data-loadmode="0" alt=""><!-- mobile -->
                </picture>
            </a>
        </div>
                <div class="swiper-slide">
            <a href="javascript:;">
                <picture>
                <!--[if IE 9]><video style="display: none"><![endif]-->
                <source srcset="temp/753x510.jpg" media="(min-width: 768px)">
                <!--[if IE 9]></video><![endif]-->
                <img src="temp/.jpg" data-loadmode="0" alt=""><!-- mobile -->
                </picture>
            </a>
        </div>
               <div class="swiper-slide">
            <a href="javascript:;">
                <picture>
                <!--[if IE 9]><video style="display: none"><![endif]-->
                <source srcset="temp/753x510.jpg" media="(min-width: 768px)">
                <!--[if IE 9]></video><![endif]-->
                <img src="temp/.jpg" data-loadmode="0" alt=""><!-- mobile -->
                </picture>
            </a>
        </div>
    </div>
    <div class="swiper-button-prev"></div>
    <div class="swiper-button-next"></div>
    </div>
    <div class="swiper-container gallery-thumbs"> 
        <div class="swiper-wrapper">
            <div class="swiper-slide"><span>1</span></div>
            <div class="swiper-slide"><span>2</span></div>
            <div class="swiper-slide"><span>3</span></div>
            <div class="swiper-slide"><span>4</span></div>
            <div class="swiper-slide"><span>5</span></div>
        </div>
        <div class="swiper-button-prev"></div>
        <div class="swiper-button-next"></div>
    </div>

JS КОД ->

var galleryThumbs = new Swiper('.gallery-thumbs', {
      spaceBetween: 10,
      slidesPerView: 5,
      freeMode: true,
      watchSlidesVisibility: true,
      watchSlidesProgress: true,
      navigation: {
        nextEl: '.gallery-thumbs .swiper-button-next',
        prevEl: '.gallery-thumbs .swiper-button-prev', 
    },
    });

   var galleryTop = new Swiper('.news-detail-slider', {
    slidesPerView: 1,
    navigation: {
        nextEl: '.news-detail-slider .swiper-button-next',
        prevEl: '.news-detail-slider .swiper-button-prev', 
    },
    autoplay:{
        delay: 4000,
        disableOnInteraction: !1
    },
    effect: "flipEffect",
    slidesOffsetBefore: 0,
    speed: 800,
    flipEffect: {
        rotate: 0,
        stretch: -10,
        depth: 100,
        modifier: 3,
        slideShadows: !1
    },
    spaceBetween: 0,
    thumbs: {
        swiper: galleryThumbs
    }
});

https://i.hizliresim.com/FqQ2ef.jpg

1 Ответ

0 голосов
/ 11 мая 2020

Только что разобрался.

Вам необходимо добавить .swiper-container ко всем новым классам Swiper в вашем случае

var galleryThumbs = new Swiper('.swiper-container.gallery-thumbs', {

var galleryTop = new Swiper('.swiper-container.news-detail-slider', {

Тогда волшебным образом swiper знает, что на странице есть кратные.

...