vue.js--Tab选项卡
来源:互联网 发布:同业分销 知乎 编辑:程序博客网 时间:2024/06/05 11:22
一.简单tab切换案例
使用vue.js实现tab切换很简单,先使用v-for把数据遍历渲染到页面上,v-for中有一个index表示索引,将index作为参数传入到tab(index)这个函数中,在data中定义一个num变量,在title中如果index==num,这个title就会添加一个acive的class。当然,这个num是需要在tab()这个函数中不断改变的,需要将传入的索引值赋值给num,这样在.tabCon里,我们就可以用v-show做下判断。v-show=”index==num”,如果等于的话,当前的内容就会显示。否则隐藏。
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title><style type="text/css">*{padding: 0;margin: 0}#app{width: 500px;height: 300px;margin: 30px auto;background-color: #ddd;}#app ul{height: 50px;line-height: 50px;width: 100%;background-color: #999;cursor: pointer;}#app ul li{display: inline-block;padding:0 10px;color:#fff;}#app .active{background:#eee;color: #f00;}.tabCon{padding: 20px;}</style></head><body><!--这里是html结构--><div id="app"> <ul> <li v-for="(item,index) in tabs" :class="{active:index == num}"@click="tab(index)">{{item}}</li> </ul> <div class="tabCon"> <div v-for='(itemCon,index) in tabContents' v-show="index == num">{{itemCon}}</div> </div></div><script type="text/javascript" src='js/vue.js'></script><script>var vm = new Vue({ el: '#app', data: { tabs: ["水果", "服饰","头饰"], tabContents: ["苹果", "连衣裙","发夹"], num: 0 }, methods: { tab(index) { this.num = index; } }});</script></body></html>
二.Vue.js编写tab滑块效果
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Vue.js编写tab滑块效果</title> <style> *{margin:0;padding:0;} #tabPanel .itemname{height:40px;width:180px;margin-bottom:10px;} #tabPanel .itemcontent{height:40px;width:180px;} #tabPanel .addbtn{width:100px;height:30px;} #tabPanel .active{background:#eee;} #tabPanel{height:340px;width:500px;margin:100px auto;} #tabPanel .tab{height:40px;background:#ccc;margin-top:10px;} #tabPanel .tab ul li{list-style: none;float:left;width:80px;text-align:center; line-height:40px;} #tabPanel .content{height:300px;width:500px;background:#eee;} </style> </head><body><div id="tabPanel"><label>添加滑块名称:<input type="text" v-model="tabItem" class="itemname"></label><br><label>添加滑块内容:<input type="text" v-model="tabContent" class="itemcontent"></label><input type="button" value="添加选项" @click="addItem()" class="addbtn"><div class="tab"><ul><li v-for="(value, index) in tabs" v-bind:class="{active: index==num}" @mouseover="toggle(index)" @dblclick="del(index)">{{value}}</li></ul></div><div class="content"><div class="box" v-for="(value, index) in tabContents" v-show="index == num" contenteditable="true" @blur="editContent(index,value)">{{value+index}}</div></div></div></body><script src="js/vue.js"></script><script>var v = new Vue ({ el: "#tabPanel", data: {tabs: ["第一项","第二项"],tabContents: ["第一项内容","第二项内容"],num: 0,tabItem:"",tabContent:"" }, methods:{//切换滑块toggle: function(index){this.num = index;},//添加滑块addItem: function(){if(this.tabItem == "" || this.tabContent == ""){ alert("填写完整的名称和内容");}else{ this.tabs.push(this.tabItem); this.tabContents.push(this.tabContent);}},//双击删除滑块del: function(index){this.tabs.splice(index,1);this.tabContents.splice(index,1)},//编辑选项内容editContent: function(index,value){this.tabContents[index] = value;console.log(this.tabContents);} }});</script></html>
阅读全文
0 0
- vue.js--Tab选项卡
- vue.js--Tab选项卡
- vue.js--Tab选项卡
- 使用vue.js简单的tab选项卡效果
- vue 插件tab选项卡
- vue 动态加载tab选项卡组件
- tab选项卡js效果
- js实现选项卡(Tab)
- JS 操作Tab选项卡
- Js tab栏选项卡
- js tab选项卡 mootools tab选项卡
- 【自我作业】JS+CSS tab选项卡
- js栏目切换 模仿tab选项卡
- 用JS制作tab选项卡效果
- 一个JS选项卡TAB函数
- tab -选项卡切换js效果
- 使用js实现tab选项卡效果
- 原生js写tab选项卡
- DOM内部插入prepend()与prependTo()
- 排序算法总结之直接选择排序
- ocp Oracle.1z0-053 711--122
- GPUImage部分头文件的作用
- 整理了一下常用的Mac终端指令
- vue.js--Tab选项卡
- 敲代码基础之工具篇
- Ubuntu 14.04安装JDK1.8.0_25与配置环境变量
- csu1775 悲催的移寝
- Tomcat 查看、停止、启动
- Android的电源管理分析
- F
- 第二节总结
- caffe SSD环境搭建过程遇到的问题