幽灵资源网 Design By www.bzswh.com
本文实例为大家分享了vue制作滑动标签的具体代码,供大家参考,具体内容如下
第一步:写出HTML结构
先写一个你需要展示的静态效果,写好后再改为VUE动态生成,代码如下:
<div id="app1" class="wrap"> <ul class="tabs"> <li class="active"><a href="javascript:" >标签1</a></li> <li><a href="javascript:" >标签2</a></li> <li><a href="javascript:" >标签3</a></li> </ul> <div class="tabs-con"> <p>内容1</p> </div> <div class="tabs-con"> <p>内容2</p> </div> <div class="tabs-con"> <p>内容3</p> </div> </div>
第二步:写出css样式
为你的结构写一个样式,代码如下:
<style type="text/css">
* {
margin: 0;
padding: 0;
border-style: none;
}
ul,ol {
list-style: none;
}
a {
text-decoration: none;
color: #777;
}
body {
font: normal 14px/1.6 Helvetica,"Microsoft YaHei";
color: #777;
background-color: #f5f5f5;
}
.wrap {
width: 600px;
margin: 20px auto 0;
}
.tabs {
overflow: auto;
}
.tabs li {
float: left;
}
.tabs li a {
display: block;
padding: 10px 15px;
color: #bbb;
}
.tabs li.active {
background-color: #fff;
}
.tabs li.active a {
color: #333;
}
.tabs-con {
padding: 15px;
background-color: #fff;
}
</style>
第三步:写出js代码
这一步是关键,要用到vue的内容了
var app1 = new Vue ({
el: '#app1',
data: {
//标签列表的数据,是数组,数组项是对象格式
tabs: [
{name:'标签1'},
{name:'标签2'},
{name:'标签3'}
],
num: 0
},
//方法,建立自定义函数,对应点击时间onclick
methods: {
tabsSwitch(index) {
//用到的变量要加上this,表示使用上面构造函数app1的对象num
this.num = index;
}
}
})
第四步:更改上边的html结构
<div id="app1" class="wrap">
<ul class="tabs">
<li v-for="(tab,index) in tabs" :class="{active:num===index}" @click="tabsSwitch(index)"><a href="javascript:">{{tab.name}}</a></li>
</ul>
<div class="tabs-con" v-show="num===0">
<p>内容1</p>
</div>
<div class="tabs-con" v-show="num===1">
<p>内容2</p>
</div>
<div class="tabs-con" v-show="num===2">
<p>内容3</p>
</div>
</div>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
标签:
vue,滑动标签
幽灵资源网 Design By www.bzswh.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
幽灵资源网 Design By www.bzswh.com
暂无评论...