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中利用three.js实现全景图的完整示例
Dec 07 Vue.js
Vue 组件注册全解析
Dec 17 Vue.js
vue3使用vue-count-to组件的实现
Dec 25 Vue.js
vue实现简易的双向数据绑定
Dec 29 Vue.js
vue使用echarts画组织结构图
Feb 06 Vue.js
用vite搭建vue3应用的实现方法
Feb 22 Vue.js
HTML+VUE分页实现炫酷物联网大屏功能
May 27 Vue.js
Vue CLI中模式与环境变量的深入详解
May 30 Vue.js
Vue提供的三种调试方式你知道吗
Jan 18 Vue.js
vue使用localStorage持久性存储实现评论列表
Apr 14 Vue.js
vue ant design 封装弹窗表单的使用
Jun 01 Vue.js
vue3 自定义图片放大器效果的示例代码
Jul 23 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
用PHP实现将GB编码转换为UTF8
2006/11/25 PHP
PHP 事件机制(2)
2011/03/23 PHP
php+ajax实现图片文件上传功能实例
2014/06/17 PHP
在云虚拟主机部署thinkphp5项目的步骤详解
2017/12/21 PHP
jquery判断元素的子元素是否存在的示例代码
2014/02/04 Javascript
jquery渐隐渐显的图片幻灯闪烁切换实现方法
2015/02/26 Javascript
Nodejs中session的简单使用及通过session实现身份验证的方法
2016/02/04 NodeJs
基于jQuery实现收缩展开功能
2016/03/18 Javascript
jquery Banner轮播选项卡
2016/12/26 Javascript
easyui 中的datagrid跨页勾选问题的实现方法
2017/01/18 Javascript
JavaScript对象的浅拷贝与深拷贝实例分析
2018/07/25 Javascript
用WebStorm进行Angularjs 2开发(环境篇:Windows 10,Angular-cli方式)
2018/12/05 Javascript
vue项目接口管理,所有接口都在apis文件夹中统一管理操作
2020/08/13 Javascript
[19:14]DOTA2 HEROS教学视频教你分分钟做大人-维萨吉
2014/06/24 DOTA
[52:02]完美世界DOTA2联赛PWL S2 FTD.C vs SZ 第一场 11.27
2020/11/30 DOTA
python使用rabbitmq实现网络爬虫示例
2014/02/20 Python
Python3 能振兴 Python的原因分析
2014/11/28 Python
Linux-ubuntu16.04 Python3.5配置OpenCV3.2的方法
2018/04/02 Python
python二进制文件的转译详解
2019/07/03 Python
pycharm设置当前工作目录的操作(working directory)
2020/02/14 Python
浅谈keras通过model.fit_generator训练模型(节省内存)
2020/06/17 Python
Pycharm安装Qt Design快捷工具的详细教程
2020/11/18 Python
详解tf.device()指定tensorflow运行的GPU或CPU设备实现
2021/02/20 Python
魅力惠奢品线上平台:MEI.COM
2016/11/29 全球购物
Tech21美国/加拿大:英国NO.1防摔保护壳品牌
2018/01/20 全球购物
法国最大电子商务平台:Cdiscount
2018/03/13 全球购物
交通事故委托书范本(2篇)
2014/09/21 职场文书
搞笑的爱情检讨书
2014/10/01 职场文书
渠道运营商合作协议书范本
2014/10/06 职场文书
公司总经理岗位职责
2015/04/01 职场文书
初中政治教学工作总结
2015/08/13 职场文书
信息技术远程培训心得体会
2016/01/09 职场文书
golang协程池模拟实现群发邮件功能
2021/05/02 Golang
Mysql 设置boolean类型的操作
2021/06/04 MySQL
Python中npy和mat文件的保存与读取
2022/04/24 Python
python解析json数据
2022/04/29 Python