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的mixin策略
Nov 19 Vue.js
Vue开发中常见的套路和技巧总结
Nov 24 Vue.js
使用vue编写h5公众号跳转小程序的实现代码
Nov 27 Vue.js
vue开发chrome插件,实现获取界面数据和保存到数据库功能
Dec 01 Vue.js
Vue router安装及使用方法解析
Dec 02 Vue.js
Vue $attrs &amp; inheritAttr实现button禁用效果案例
Dec 07 Vue.js
Vue与React的区别和优势对比
Dec 18 Vue.js
vue 动态创建组件的两种方法
Dec 31 Vue.js
vue自定义组件实现双向绑定
Jan 13 Vue.js
一起来看看Vue的核心原理剖析
Mar 24 Vue.js
vue ref如何获取子组件属性值
Mar 31 Vue.js
vue @click.native 绑定原生点击事件
Apr 22 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
基于HBase Thrift接口的一些使用问题及相关注意事项的详解
2013/06/03 PHP
php设置允许大文件上传示例代码
2014/03/10 PHP
微信支付开发教程(一)微信支付URL配置
2014/05/28 PHP
1亿条数据如何分表100张到Mysql数据库中(PHP)
2015/07/29 PHP
基于thinkPHP3.2实现微信接入及查询token值的方法
2017/04/18 PHP
PHP文件后缀不强制为.php方法
2019/03/31 PHP
完整显示当前日期和时间的JS代码
2007/09/17 Javascript
node.js中的fs.chownSync方法使用说明
2014/12/16 Javascript
JavaScript数组各种常见用法实例分析
2015/08/04 Javascript
Javascript控制div属性动态变化实例分析
2015/10/08 Javascript
JavaScript匿名函数之模仿块级作用域
2015/12/12 Javascript
Javascript实现Array和String互转换的方法
2015/12/21 Javascript
jQuery事件处理的特征(事件命名机制)
2016/08/23 Javascript
angularjs的select使用及默认选中设置
2017/04/08 Javascript
AngularJS学习笔记之表单验证功能实例详解
2017/07/06 Javascript
30分钟精通React今年最劲爆的新特性——React Hooks
2019/03/11 Javascript
vue中destroyed方法的使用说明
2020/07/21 Javascript
vue 验证两次输入的密码是否一致的方法示例
2020/09/29 Javascript
Python中subprocess模块用法实例详解
2015/05/20 Python
python bottle框架支持jquery ajax的RESTful风格的PUT和DELETE方法
2017/05/24 Python
python实现对任意大小图片均匀切割的示例
2018/12/05 Python
使用python绘制3维正态分布图的方法
2018/12/29 Python
图文详解python安装Scrapy框架步骤
2019/05/20 Python
python实现智能语音天气预报
2019/12/02 Python
python3.5的包存放的具体路径
2020/08/16 Python
python 动态绘制爱心的示例
2020/09/27 Python
世界上最大的糖果店:Dylan’s Candy Bar
2017/11/07 全球购物
学习全国两会精神心得体会范文
2014/03/17 职场文书
北京故宫导游词
2015/01/31 职场文书
安全保证书格式
2015/02/28 职场文书
推荐信范文大全
2015/03/27 职场文书
家庭贫困证明
2015/06/16 职场文书
保护环境建议书作文500字
2015/09/14 职场文书
中学教代会开幕词
2016/03/04 职场文书
《艾尔登法环》发布最新「战技」宣传片
2022/04/03 其他游戏
Java由浅入深通关抽象类与接口(上篇)
2022/04/26 Java/Android