mui轮播图片设定自动轮播

   mui的轮播图片,在默认情况下是无法进行自动轮播的;只有在滑动或者拖动之后才能进行正常轮播;这里需要添加一个定时器,设定默认开始轮播的时间;
setTimeout(function(){
    var gallery = mui('.mui-slider');
    gallery.slider({
         interval:1800//自动轮播周期,若为0则不自动播放,默认为0;
    });
},300)
   然而,初级的轮播是图片数量固定,但是轮播图片如果是从后台取值,且图片数量不定的情况下,又该如何轮播呢?有一种解决办法是用添加数组的方式,遍历json内图片的数量,然后一个一个将图片添加进数组进行图片dome的循环,这种方法,代码较多而且操作复杂;
   这里提供一个更简单的方法,vue.js的v-for方法,不仅支持随机数量的轮播,而且在后台返回的json内图片只有一张的情况,则停止轮播,代码如下;

页面部分:

              <div class="mui-slider ">
          <div class="mui-slider-group mui-slider-loop">
            <!--支持循环,需要重复图片节点-->
            <div class="mui-slider-item mui-slider-item-duplicate" v-bind:class="{dispnone:isImgShow}">
                <a @click="goToReceive(items[items.length-1])">![](imgLast)</a>
                <button type="button" v-text="btnTextLast" @click="goToReceive(items[items.length-1])"></button>
            </div>
            <div class="mui-slider-item" v-for="item in items">
                <a @click="goToReceive(item)">![](item.img)</a>
                <button type="button" v-text="item.btnText"  @click="goToReceive(item)"></button>
            </div>
            <!--支持循环,需要重复图片节点-->
            <div class="mui-slider-item mui-slider-item-duplicate" v-bind:class="{dispnone:isImgShow}">
                <a @click="goToReceive(items[0])">![](imgfrist)</a>
                <button type="button" v-text="btnTextFrist"  @click="goToReceive(items[0])"></button>
            </div>
          </div>
        </div>

js部分:

                vm.btnTextLast = common.getDict('btnType',vm.items[vm.items.length-1].displayType);
                        vm.btnTextFrist = common.getDict('btnType',vm.items[0].displayType);
                        // 图片数量为1时,不再轮播
                        if(vm.items.length == 1){
                            vm.isImgShow = false;
                        }else{
                            vm.imgfrist = vm.items[0].img;
                            vm.imgLast = vm.items[vm.items.length-1].img;
                            vm.isImgShow = true;
                            //获得slider插件对象
                            vm.imgCycle();
                        }
                        
                        for(var i=0;i<vm.items.length;i++){
                            vm.items[i].btnText = common.getDict('btnType',vm.items[i].displayType);
                        }
   如此,轮播图片不仅支持自动轮播,而且支持不固定数量图片无缝轮播,更是支持按钮变换v-text.
   其中,vm代表this.函数imgCycle则是轮播定时器函数。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,084评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,613评论 4 61
  • 玲珑簪,青丝绾,素手描眉眼, 望不穿,锦帐轻卷夜风寒。 香腮雪,芙蓉面,光阴逐流年, 守不住,十里红妆向晚。 何人...
    夢九阅读 2,669评论 0 1
  • 彩铅和水彩目前都离我而去啦~~ 耐不住寂寞、听网课的间隙用2B和自动铅笔画了简单的线稿。 但是、我不应该用网格纸的...
    柠檬鱼酱阅读 3,641评论 0 2
  • 去佛罗里达的话,要选在冬天。你可以从任何一个寒冷的地方赶来,但记得带上夏天的衣裳。 与阳光和肉体相伴,任风经过海,...
    小树莓汁阅读 3,325评论 0 5

友情链接更多精彩内容