轮播图,用vue来写一个简单的轮播图

简介: 本文介绍了如何使用Vue.js编写一个简单的轮播图功能,包括左右箭头的点击事件处理和使用v-bind、v-show指令进行图片地址绑定和箭头显示隐藏的逻辑。

轮播图,用vue来写一个简单的轮播图

写的很简单,就是一个小练习,哈哈哈,下面的几张图分别是轮播图的第一张,中间图,最后一张的效果图。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

使用了vue 中的属性绑定 v-bind ,v-show 以及 事件监听 v-on 指令。

思路:
1.vue实例中声明一个data属性imgArr,用于存放每张轮播图的地址,
2.同时定义一个默认起始索引index=0,
3.然后给两边的箭头监听点击事件,
4.最后通过v-show判断一下第一张和最后一张就不再显示左右箭头即可。

代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>vue练习</title>
    <style>
        body{
    
            background-color: #eee;
        }
        #loopImg{
    
            width: 500px;
            height: 300px;
            margin: 25vh auto;
            border-radius: 8px;
            position: relative;
        }
        .image-box>img{
    
            height: 300px;
            width: 300px;
            border-radius: 10px;
            z-index: -1;
            left: 100px;
        }
        span>img{
    
            width: 95px;
            position: absolute;
        }
        .left{
    
            left: 0;
            top: 100px;
        }
        .right{
    
            right: 0;
            top: 100px;
        }
    </style>
</head>
<body>
    <div id="loopImg">
        <!-- 左箭头 -->
        <span><img src="./link/left.png"  class="left" @click="prev" v-show="index!=0"></span>
        <span class="image-box">
            <img v-bind:src="imgArr[index]" >
        </span>
        <!-- 右箭头 -->
        <span ><img src="./link/right.png"  class="right" @click="next" v-show="index<imgArr.length-1"></span>
    </div>

     <!-- 开发环境版本,包含了有帮助的命令行警告 -->
     <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>


     <script>
         let app = new Vue({
    
             el: '#loopImg',
             data: {
    
                  // 图片url 数组
                 imgArr:[
                    "/image/ys01.jpg",
                    "/image/ys02.jpg",
                    "/image/ys03.jpg",
                    "/image/ys04.jpg",
                    "/image/ys05.jpg",
                    "/image/ys06.jpg",
                    "/image/ys07.jpg",
                    "/image/ys08.jpg",
                    "/image/ys09.jpg",
                    "/image/ys10.jpg",
                    "/image/ys11.jpg",
                    "/image/ys12.jpg",
                    "/image/ys13.jpg",
                 ],
                 index:0  // 图片数组索引
             },
             methods: {
    
                    // 前一张图片
                 prev:function(){
    
                    this.index--
                 },
                 // 下一张图片
                 next:function(){
    
                    this.index++
                 }
             }
         })
     </script>
</body>
</html>

相关文章
|
JavaScript 前端开发 API
vue尚品汇商城项目-day03【20.获取Banner轮播图的数据+21.使用swiper轮播图插件】
vue尚品汇商城项目-day03【20.获取Banner轮播图的数据+21.使用swiper轮播图插件】
349 0
|
JavaScript
vue尚品汇商城项目-day03【23.把首页当中的轮播图拆分为一个共用的全局组件】
vue尚品汇商城项目-day03【23.把首页当中的轮播图拆分为一个共用的全局组件】
191 2
|
JavaScript
在Vue中使用Swiper轮播图、同时解决点击轮播图左右切换按钮不生效的问题、同时将轮播图抽离出为一个公共组件
这篇文章介绍了在Vue中如何使用Swiper插件创建轮播图,解决Swiper左右切换按钮不生效的问题,并展示了如何将Swiper轮播图抽离成一个可复用的公共组件,同时提供了详细的安装、配置和优化建议。
在Vue中使用Swiper轮播图、同时解决点击轮播图左右切换按钮不生效的问题、同时将轮播图抽离出为一个公共组件
|
JavaScript
Vue 轮播图
Vue 轮播图
238 4
|
前端开发 JavaScript
Vue+Swiper实现轮播图效果
Vue+Swiper实现轮播图效果
586 1
|
移动开发 JavaScript 算法
vue封装一个3D轮播图组件
vue封装一个3D轮播图组件
750 0
|
JavaScript 开发者
【Vue3 组件封装】vue3 轮播图组件封装
【Vue3 组件封装】vue3 轮播图组件封装
476 0
|
Web App开发 存储 JSON
Vue 学习笔记三、触摸事件、轮播图
Vue 学习笔记三、触摸事件、轮播图
254 0
|
JavaScript
vue element组件 实现轮播图
vue element组件 实现轮播图
398 0
|
JavaScript
vue快速入门(八) 之轮播图的切换
vue快速入门(八) 之轮播图的切换
349 0