小编给大家分享一下如何使用vue.js实现轮播,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!
大足ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18980820575(备注:SSL证书合作)期待与您的合作!
使用vue.js实现轮播的方法:首先使用“
”将相应的元素包裹住;然后在“.imgShoudMove”中设置动画属性;最后采用Vue结合Css3来实现轮播图即可。
首先要了解的是Vue的动画原理。在vue中,如果我们要给元素设置动画效果,则需要使用一个
之后,便可以在.imgShoudMove中设置动画属性了,如下:
.imgShouldMove-enter{ transition: all 0.5s; } .imgShouldMove-enter-active{ transform:translateX(900px); }
注意在HTML中,这里有一个v-if="shoudShow"属性。shouldShow这个属性是在data(){}中设置的,当shouldShow从false-->true时(即img从无到突然出现时),
Vue动画原理将动画分为了 shouldShouldMove-enter 和 imgShouldMove-enter-active 两个阶段。
其中 shouldShouldMove-enter 表示动画开始的初始状态, imgShouldMove-enter-active 这表示动画的终止状态。而动画的触发则是通过if-show引起的。
示例:
HTML代码:
Script代码:
与动画相关的css代码如下
.carousel-trans-toright-enter-active, .carousel-trans-toright-old-leave-active{ transition:all 0.5s; } .carousel-trans-toright-enter{ transform:translateX(940px); //新图片从右侧940px进入 } .carousel-trans-toright-old-leave-active{ transform:translateX(-940px); //老图片向左侧940px出去 } .carousel-trans-toleft-enter-active, .carousel-trans-toleft-old-leave-active{ transition:all 0.5s; } .carousel-trans-toleft-enter{ transform:translateX(-940px); //新图片从右侧940px进入 } .carousel-trans-toleft-old-leave-active{ transform:translateX(940px); //老图片向左侧940px出去 }
注意:对于需要放在
在每次切换的时候,都要触发goto()方法,将this.isShow先置false,10毫秒后,this.isShow置true。这时,html中的
在向前、向后切换的时候,使用到了计算属性,在div.prevBtn以及div.nextBtn上,我们作了点击事件绑定,触发方法goto(),而传入的正是计算属性prevIndex, @click="goto(prevIndex)"
计算属性的设定方法如下:
computed:{ prevIndex(){ //经过一番计算过程得出result return result //这个值即中的prevIndex } },
每隔2秒自动滑动时,我们向left滑动,在data中,设定了变量 direction ,它的值要么为字符串'toleft',要么为'toright'。
我们在计算属性中对 this.direction 进行了设置,并在中对相应的name进行了字符串拼接,如下
在vue中,除了class和style可以传入对象、数组,其他的属性绑定必须进行字符串拼接。
看完了这篇文章,相信你对如何使用vue.js实现轮播有了一定的了解,想了解更多相关知识,欢迎关注创新互联行业资讯频道,感谢各位的阅读!