轮播图,用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>

相关文章
|
23天前
|
JavaScript API 开发者
Vue是如何进行组件化的
Vue是如何进行组件化的
|
25天前
|
JavaScript 前端开发 开发者
vue 数据驱动视图
总之,Vue 数据驱动视图是一种先进的理念和技术,它为前端开发带来了巨大的便利和优势。通过理解和应用这一特性,开发者能够构建出更加动态、高效、用户体验良好的前端应用。在不断发展的前端领域中,数据驱动视图将继续发挥重要作用,推动着应用界面的不断创新和进化。
|
26天前
|
JavaScript 前端开发 开发者
vue学习第一章
欢迎来到我的博客!我是瑞雨溪,一名热爱前端的大一学生,专注于JavaScript与Vue,正向全栈进发。博客分享Vue学习心得、命令式与声明式编程对比、列表展示及计数器案例等。关注我,持续更新中!🎉🎉🎉
31 1
vue学习第一章
|
26天前
|
JavaScript 前端开发 索引
vue学习第三章
欢迎来到瑞雨溪的博客,一名热爱JavaScript与Vue的大一学生。本文介绍了Vue中的v-bind指令,包括基本使用、动态绑定class及style等,希望能为你的前端学习之路提供帮助。持续关注,更多精彩内容即将呈现!🎉🎉🎉
24 1
vue学习第三章
|
26天前
|
缓存 JavaScript 前端开发
vue学习第四章
欢迎来到我的博客!我是瑞雨溪,一名热爱JavaScript与Vue的大一学生。本文介绍了Vue中计算属性的基本与复杂使用、setter/getter、与methods的对比及与侦听器的总结。如果你觉得有用,请关注我,将持续更新更多优质内容!🎉🎉🎉
35 1
vue学习第四章
|
23天前
|
JavaScript 前端开发 开发者
Vue是如何劫持响应式对象的
Vue是如何劫持响应式对象的
21 1
|
23天前
|
JavaScript 前端开发 API
介绍一下Vue中的响应式原理
介绍一下Vue中的响应式原理
27 1
|
26天前
|
JavaScript 前端开发
vue学习第五章
欢迎来到我的博客,我是瑞雨溪,一名热爱JavaScript和Vue的大一学生。自学前端2年半,正向全栈进发。如果你从我的文章中受益,欢迎关注,我将持续分享更多优质内容。你的支持是我最大的动力!🎉🎉🎉
26 1
|
23天前
|
JavaScript 前端开发 开发者
Vue是如何进行组件化的
Vue是如何进行组件化的
|
23天前
|
存储 JavaScript 前端开发
介绍一下Vue的核心功能
介绍一下Vue的核心功能