查看: 1990|回复: 0
打印 上一主题 下一主题

关于Progress(进度)制作自动适应导航的兼容性解决办法

[复制链接]
  • TA的每日心情
    奋斗
    2017-12-9 09:07
  • 签到天数: 5 天

    [LV.2]偶尔看看I

    1

    主题

    11

    帖子

    58

    积分

    注册会员

    Rank: 2

    积分
    58
    跳转到指定楼层
    楼主
    发表于 2017-12-9 09:15:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    swiper-container宽度是480px,这样swiper-slide获得的宽度是整数,这样运行是没问题,但是当swiper-container改变swiper-slide获得的宽度不是整数带有小数的时候就会出现问题。怎样解决。

    <div class="swiper-container" id="swiper-container2" style="width:480px;">
            <div class="swiper-wrapper">
                    <div class="swiper-slide active-nav">
                            版块1</div>
                    <div class="swiper-slide">
                            版块2</div>
                    <div class="swiper-slide">
                            版块3</div>
                    <div class="swiper-slide">
                            版块4</div>
                    <div class="swiper-slide">
                            版块5</div>
                    <div class="swiper-slide">
                            版块6</div>
                    <div class="swiper-slide">
                            版块7</div>
                    <div class="swiper-slide">
                            版块8</div>
            </div>
    </div>
    <div class="swiper-container" id="swiper-container3" style="width:480px;">
            <div class="swiper-wrapper">
                    <div class="swiper-slide blue-slide">
                            slider1</div>
                    <div class="swiper-slide red-slide">
                            slider2</div>
                    <div class="swiper-slide orange-slide">
                            slider3</div>
                    <div class="swiper-slide blue-slide">
                            slider4</div>
                    <div class="swiper-slide red-slide">
                            slider5</div>
                    <div class="swiper-slide orange-slide">
                            slider6</div>
                    <div class="swiper-slide blue-slide">
                            slider7</div>
                    <div class="swiper-slide red-slide">
                            slider8</div>
            </div>
    </div>
    <script>
    var mySwiper2 = new Swiper('#swiper-container2',{
    watchSlidesProgress : true,
    watchSlidesVisibility : true,
    slidesPerView : 3,
    onTap: function(){
                            mySwiper3.slideTo( mySwiper2.clickedIndex)
                    }
    })
    var mySwiper3 = new Swiper('#swiper-container3',{
    onSlideChangeStart: function(){
                            updateNavPosition()
                    }
    })
    function updateNavPosition(){
                    $('#swiper-container2 .active-nav').removeClass('active-nav')
                    var activeNav = $('#swiper-container2 .swiper-slide').eq(mySwiper3.activeIndex).addClass('active-nav');
                    if (!activeNav.hasClass('swiper-slide-visible')) {
    console.log(1);
                            if (activeNav.index()>mySwiper2.activeIndex) {
    console.log(2);
                                    var thumbsPerNav = Math.floor(mySwiper2.width/activeNav.width())-1
                                    mySwiper2.slideTo(activeNav.index()-thumbsPerNav)
                            }
                            else {
    console.log(3);
                                    mySwiper2.slideTo(activeNav.index())
                            }       
                    }
            }
    </script>

    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏 分享分享 分享淘帖
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Archiver|手机版|小黑屋|Swiper中文网 ( 粤ICP备15001020号

    GMT+8, 2024-6-6 02:01 , Processed in 0.073943 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2013 Comsenz Inc.

    快速回复 返回顶部 返回列表