Swiper插件

   我用ajax去获取后台数据,然后用Swiper插件去做滑动效果,不过没反应,
   要是把Swiper对象放到success里面又能有效果,如果不用ajax获取,静态写的话又能用
   这是怎么回事,还是有什么机制问题?
   
            $.ajax({
                    type: "get",
                    url: "nav.php",
                    cache: false,
                    dataType: "json",
                    success: function(data) {
                        var data = data;
                        var html = '';
                        for (var i = 0; i < data.length; i++) {
                            html += '<div class="swiper-slide">' + data[i].nav + '</div>';
                        }
                        $(".swiper-container .swiper-wrapper").get(0).innerHTML = html;
                    },
                    error: function() {
                        alert("出错");
                    }
                });
                
                var swiper2 = new Swiper('.swiper-container', {
                            slidesPerView: 7,
                            paginationClickable: true,
                            spaceBetween: 30,
                            freeMode: true
                });
                
                
            ----------html--------------    
                <div class="swiper-container">
                <div class="swiper-wrapper">
                    <!--<div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>-->
                </div>
            </div>        
  
阅读 4.8k
1 个回答

你把初始化Swiper放到ajax的回调里面试试

 $.ajax({
                    type: "get",
                    url: "nav.php",
                    cache: false,
                    dataType: "json",
                    success: function(data) {
                        var data = data;
                        var html = '';
                        for (var i = 0; i < data.length; i++) {
                            html += '<div class="swiper-slide">' + data[i].nav + '</div>';
                        }
                        $(".swiper-container .swiper-wrapper").get(0).innerHTML = html;
                        
                         var swiper2 = new Swiper('.swiper-container', {
                            slidesPerView: 7,
                            paginationClickable: true,
                            spaceBetween: 30,
                            freeMode: true
                });
                    },
                    error: function() {
                        alert("出错");
                    }
                });
                
               
                
                
            ----------html--------------    
                <div class="swiper-container">
                <div class="swiper-wrapper">
                    <!--<div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>
                    <div class="swiper-slide">中国</div>-->
                </div>
            </div> 
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题