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 相关文章推荐
vuex Module将 store 分割成模块的操作
Dec 07 Vue.js
Vue解决移动端弹窗滚动穿透问题
Dec 15 Vue.js
Vue实现指令式动态追加小球动画组件的步骤
Dec 18 Vue.js
Vue中inheritAttrs的使用实例详解
Dec 31 Vue.js
vue form表单post请求结合Servlet实现文件上传功能
Jan 22 Vue.js
vue中三级导航的菜单权限控制
Mar 31 Vue.js
一文带你理解vue创建一个后台管理系统流程(Vue+Element)
May 18 Vue.js
Vue Element UI自定义描述列表组件
May 18 Vue.js
Vue实现动态查询规则生成组件
May 27 Vue.js
vue-cropper插件实现图片截取上传组件封装
May 27 Vue.js
vue组件冲突之引用另一个组件出现组件不显示的问题
Apr 13 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
php Undefined index和Undefined variable的解决方法
2008/03/27 PHP
php5新改动之短标记启用方法
2008/09/11 PHP
PHP实现数组根据某个单元字段排序操作示例
2018/08/01 PHP
javascript getElementsByClassName 和js取地址栏参数
2010/01/02 Javascript
js鼠标滑过图片震动特效的方法
2015/02/17 Javascript
教你使用javascript简单写一个页面模板引擎
2015/05/05 Javascript
JavaScript多图片上传案例
2015/09/28 Javascript
js实现网页图片延时加载 提升网页打开速度
2016/01/26 Javascript
js复制内容到剪贴板代码,js复制代码的简单实例
2016/10/27 Javascript
微信小程序模板之分页滑动栏
2017/02/10 Javascript
微信小程序 引入es6 promise
2017/04/12 Javascript
2种简单的js倒计时方式
2017/10/20 Javascript
JavaScript中Require调用js的实例分享
2017/10/27 Javascript
关于 angularJS的一些用法
2017/11/29 Javascript
JavaScript 替换所有匹配内容及正则替换方法
2020/02/12 Javascript
原生JS实现烟花效果
2020/03/10 Javascript
element中el-container容器与div布局区分详解
2020/05/13 Javascript
用PyQt进行Python图形界面的程序的开发的入门指引
2015/04/14 Python
Python实现把数字转换成中文
2015/06/29 Python
Python的Flask框架中使用Flask-SQLAlchemy管理数据库的教程
2016/06/14 Python
python实现读Excel写入.txt的方法
2018/04/29 Python
Python pycharm 同时加载多个项目的方法
2019/01/17 Python
python占位符输入方式实例
2019/05/27 Python
Django Rest framework权限的详细用法
2019/07/25 Python
使用python创建生成动态链接库dll的方法
2020/05/09 Python
浅谈tensorflow模型保存为pb的各种姿势
2020/05/25 Python
Pytorch 使用opnecv读入图像由HWC转为BCHW格式方式
2020/06/02 Python
CSS3中:nth-child和:nth-of-type的区别深入理解
2014/03/10 HTML / CSS
Clarks英国官方网站:全球领军鞋履品牌
2016/11/26 全球购物
医药工作者的求职信范文
2013/09/21 职场文书
旅游管理专业大学生职业规划书
2014/02/27 职场文书
充分就业社区汇报材料
2014/05/07 职场文书
弘扬焦裕禄精神践行三严三实心得体会
2014/10/13 职场文书
寒假安全保证书
2015/02/28 职场文书
特种设备安全管理制度
2015/08/06 职场文书
Python中seaborn库之countplot的数据可视化使用
2021/06/11 Python