IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> 用Vue框架实现一个tab栏,切换不同的图片。 -> 正文阅读

[JavaScript知识库]用Vue框架实现一个tab栏,切换不同的图片。

1.首先我们需要了解的是vue这个框架,它是一个渐进式的框架!

2.vue2.0版本是2016年发布的!

3.还有一大堆的指令这里我就不一一的给大家描述了,如果大家感兴趣的话,可以去vue的官方网站看看,Vue官网地址

4.现在我们直接进入正题,首先给大家看看这个tab切换栏的案例。

?

1.说到tab栏切换,相信大家都知道是怎么一回事吧,就是切换点击上面的选项卡,下面的图片也跟着切换。

2.tab栏的切换可以用原生JS去实现,也可以通过jQuery实现。但是今天我要使用vue去实现它,我觉得无论是使用原生JS还是jquery,都会去操作DOM元素。而操作DOM不利于JavaScript性能的优化。?

5.我们项目中需要使用vue,因此我们需要先引入vue.js。这个大家可以去官网上下载!现在给大家看看我引入vue的模板。

6.现在正式开始,书写tab栏切换的代码!给大家看看我写的源码

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="./vue.js"></script>
    <style>
        #app {
            width: 1250px;
            text-align: center;
        }

        div img {
            width: 600px;
            height: 400px;
        }

        .tab {
            width: 600px;
            height: 50px;
            margin: 0 auto;
        }

        ul {
            padding: 0;
        }

        ul li {
            list-style-type: none;
            float: left;
            width: 198px;
            height: 50px;
            text-align: center;
            font-size: 30px;
            border: 1px solid;
            /* background-color: aqua; */
        }
        .active{
            background-color: plum;
        }
        img {
            display: none;
        }
        .current {
            margin: 0 auto;
            display: block;
        }
    </style>
</head>

<body>
    <div id="app">
        <div class="tab">
            <ul>
                <li @click ='change(index)' :key='item.id' :class ='index == currentIndex ? "active":""' v-for='(item,index) in list'>{{item.title}}</li>
            </ul>
        </div>
        <div :key='item.id' v-for='(item,index) in list'>
            <img :src='item.path' :class ='index == currentIndex ? "current":""'>
        </div>
    </div>
    <script>
        let vm = new Vue({
            el: '#app',
            data: {
                currentIndex: 0,
                list: [{
                    id: 1,
                    title: 'one',
                    path: 'img/1.jpg'
                }, {
                    id: 2,
                    title: 'two',
                    path: 'img/2.jpg'
                }, {
                    id: 3,
                    title: 'three',
                    path: 'img/3.jpg'
                }]
            },
            methods:{
                change(index){
                    this.currentIndex = index
                }
            }
        })
    </script>
</body>

</html>

?大家可以看到其实我写的结构代码非常的少,主要是使用了大量的vue的指令去操作data里面的数据,将数据渲染到页面上面。大家如果看不懂指令的操作,可以去官网上看看相关指令的作用。

我觉得这个tab栏切换的关键是定义了一个currentIndex,通过和循环遍历中的index比较,从而去给对应的元素添加相应类名。这样就可以给对应的选项卡添加背景色,以及显示对应的图片。

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-11-29 16:13:51  更:2021-11-29 16:14:10 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 5:59:13-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码