vue实现轮播图(每隔两秒自动翻页、翻到末页自动返回首页、点击按钮左右翻页)
很久之前写过一篇用js按钮实现切换图片效果,现在用vue实现一个轮播图,可以实现点击按钮左右翻页、每隔两秒自动翻页、翻到最后一页自动返回第一页。实现结果如下:实现代码:<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8" /><title>图片切换</title>
·
很久之前写过一篇用js按钮实现切换图片效果。
现在用vue实现一个轮播图,可以实现点击按钮左右翻页、每隔两秒自动翻页、翻到最后一页自动返回第一页。
实现结果如下:
具体的实现逻辑如下面的代码所示,使用时需把图片数组里的图片替换为自己的图片即可。
实现代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>图片切换</title>
<link rel="stylesheet" href="./css/index.css" />
</head>
<body>
<div id="mask">
<div class="center">
<h2 class="title">
<img src="./images/logo.gif" alt="">
Vue轮播图
</h2>
<!-- 图片 -->
<img :src="imgArr[index]" alt="" />
<!-- 左箭头 -->
<a href="javascript:void(0)" v-if="index!=0" @click="prev" class="left">
<img src="./images/prev.png" alt="" />
</a>
<!-- 右箭头 -->
<a href="javascript:void(0)" v-show="index<imgArr.length-1" @click="next" class="right">
<img src="./images/next.png" alt="" />
</a>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
var app = new Vue({
el: "#mask",
data: {
imgArr: [
"./images/00.jpg",
"./images/01.jpg",
"./images/02.jpg",
"./images/03.jpg",
"./images/04.jpg",
"./images/05.jpg",
"./images/06.jpg",
"./images/07.jpg",
"./images/08.jpg",
"./images/09.jpg",
"./images/10.jpg",
],
index: 0
},
methods: {
fun:function(){
//setInterval(函数体,时间)
setInterval(this.next,2000)
},
prev:function(){
this.index--;
},
next:function(){
this.index++;
if(this.index == this.imgArr.length){
this.index = 0;
}
}
},
mounted:function(){ //生命周期 钩子函数 挂载完成
this.fun()
}
})
</script>
</body>
</html>
更多推荐
已为社区贡献2条内容
所有评论(0)