vue选项卡切换的实现案例


Posted in Vue.js onApril 11, 2022

直接上代码:

<!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>
</head>
<style>
    * {
        padding: 0;
        margin: 0;
    }
    
    ul {
        list-style: none;
    }
    
    #app {
        width: 480px;
        margin: 20px auto;
        border: 1px solid cornflowerblue;
    }
    
    ul {
        width: 100%;
        overflow: hidden;
    }
    
    ul li {
        float: left;
        width: 160px;
        height: 60px;
        line-height: 60px;
        text-align: center;
        background-color: #cccccc;
    }
    
    ul li a {
        text-decoration: none;
        color: black;
    }
    
    p {
        height: 200px;
        text-align: center;
        line-height: 200px;
        background-color: #fff;
    }
    
    li.active {
        background-color: cornflowerblue;
    }
    /* 有这个类名的p标签,显示 */
    
    p.active {
        display: block;
    }
    
    img {
        width: 100%;
    }
</style>
 
<body>
    <div id="app">
        <ul>
            <!-- :class中可以写三元(index==cur?'active':''),也可以写方法  :class相当于v-bind:class  -->
            <!--使用for遍历li 要加上:key ,再添加一个点击事件-->
            <li :class="isActive(index)" v-for="(item,index) in list" :key="item.id" @click="toggle(index)">
                <!-- 通过插值把名字显示到页面 -->
                <a href="javascript:;" rel="external nofollow" >{{item.name}}</a>
            </li>
        </ul>
        <!-- v-show显示,index和cur一样才显示 -->
        <!--使用for遍历li 要加上:key ,再添加一个点击事件-->
        <p v-show="index==cur" v-for="(item,index) in list" :key="item.id">
            <!-- 只有用v-bind进行数据绑定 才能在src中使用item.img -->
            <img :src="item.img" alt="">
        </p>
    </div>
    <!-- 
    1.将所有的图片都隐藏
    2.默认第一个按钮有激活的样式
    3.点击哪一个按钮,给哪一个按钮添加激活样式
   -->
    <script src="../vue.js"></script>
    <script>
        new Vue({
            el: "#app",
            /* 数据 */
            data: {
                /* 定义一个显示元素的索引 */
                cur: 0,
                list: [{
                    id: 1,
                    name: "鞠婧祎",
                    img: "./img/1.jpg"
                }, {
                    id: 2,
                    name: "李沁",
                    img: "./img/2.jpg"
                }, {
                    id: 3,
                    name: "易烊千玺",
                    img: "./img/3.jpg"
                }]
            },
            methods: {
                /* 判断是否要激活 */
                isActive(index) {
                    return index == this.cur ? "active" : ""
                },
                //  点击li标签改变cur的值,实现切换效果
                // index是接受上面 @click中方法传递过来的index。
                toggle(index) {
                    this.cur = index
                }
            }
        })
    </script>
 
</body>
</html>

vue选项卡切换的实现案例

Vue.js 相关文章推荐
vue的hash值原理也是table切换实例代码
Dec 14 Vue.js
vue项目中企业微信使用js-sdk时config和agentConfig配置方式详解
Dec 15 Vue.js
vue实现图书管理系统
Dec 29 Vue.js
详解Vue2的diff算法
Jan 06 Vue.js
vue实现防抖的实例代码
Jan 11 Vue.js
基于VUE实现简单的学生信息管理系统
Jan 13 Vue.js
Vue ​v-model相关知识总结
Jan 28 Vue.js
vue-element-admin项目导入和导出的实现
May 21 Vue.js
vite+vue3.0+ts+element-plus快速搭建项目的实现
Jun 24 Vue.js
vue实现锚点定位功能
Jun 29 Vue.js
Vue监视数据的原理详解
Feb 24 Vue.js
vue实现可以快进后退的跑马灯组件
Apr 08 Vue.js
分享一个vue实现的记事本功能案例
vue代码分块和懒加载非必要资源文件
Apr 11 #Vue.js
vue打包时去掉所有的console.log
三种方式清除vue路由跳转router-link的历史记录
Apr 10 #Vue.js
vue route新窗口跳转页面并且携带与接收参数
Apr 10 #Vue.js
vue实力踩坑之push当前页无效
Apr 10 #Vue.js
vue实现Toast组件轻提示
Apr 10 #Vue.js
You might like
为什么《星际争霸》是测试人工智能的理想战场
2019/12/03 星际争霸
php实现简单爬虫的开发
2016/03/28 PHP
javascript显示隐藏层比较不错的方法分析
2008/09/30 Javascript
实现JavaScript中继承的三种方式
2009/10/16 Javascript
javascript hasFocus使用实例
2010/06/29 Javascript
jquery常用技巧及常用方法列表集合
2011/04/06 Javascript
解析jquery中的ajax缓存问题
2013/12/19 Javascript
javascript截取字符串小结
2015/04/28 Javascript
jQuery学习笔记之Ajax用法实例详解
2015/12/01 Javascript
Vue.js每天必学之构造器与生命周期
2016/09/05 Javascript
jquery 判断div show的状态实例
2016/12/03 Javascript
react系列从零开始_简单谈谈react
2017/07/06 Javascript
JavaScript实现HTML5游戏断线自动重连的方法
2017/09/18 Javascript
layer提示框添加多个按钮选择的实例
2019/09/12 Javascript
taro小程序添加骨架屏的实现代码
2019/11/15 Javascript
js布局实现单选按钮控件
2020/01/17 Javascript
Nodejs + sequelize 实现增删改查操作
2020/11/07 NodeJs
小程序角标的添加及绑定购物车数量进行实时更新的实现代码
2020/12/07 Javascript
django接入新浪微博OAuth的方法
2015/06/29 Python
在linux下实现 python 监控usb设备信号
2019/07/03 Python
最小二乘法及其python实现详解
2020/02/24 Python
Python 实现将某一列设置为str类型
2020/07/14 Python
为什么说python更适合树莓派编程
2020/07/20 Python
Python判断字符串是否为合法标示符操作
2020/09/03 Python
Django-silk性能测试工具安装及使用解析
2020/11/28 Python
使用HTML5 Canvas API绘制弧线的教程
2016/03/22 HTML / CSS
HTML5新增属性data-*和js/jquery之间的交互及注意事项
2017/08/08 HTML / CSS
美国战术品牌:5.11 Tactical
2019/05/01 全球购物
2015元旦文艺汇演主持稿(开场白+结束语)
2014/12/14 职场文书
2016年先进班集体事迹材料
2016/02/26 职场文书
MySQL Innodb关键特性之插入缓冲(insert buffer)
2021/04/08 MySQL
redis配置文件中常用配置详解
2021/04/14 Redis
python 用递归实现通用爬虫解析器
2021/04/16 Python
Go微服务项目配置文件的定义和读取示例详解
2022/06/21 Golang
MySQL的表级锁,行级锁,排它锁和共享锁
2022/07/15 MySQL
python读取mat文件生成h5文件的实现
2022/07/15 Python