所有内容一定要在最大的div(id=Vue)里
两个div(class=“zong”)里代表两个循环的假数据。第一个div的方法名和第二个div的方法名必须不一样。
(item,index)获取的是假数据的下标。
<!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">
<script src="https://cdn.suoluomei.com/common/js/jquery-2.1.4.min.js"></script>
<script src="https://cdn.suoluomei.com/common/js2.0/vue/v2.5.16/vue.js"></script>
<title>变色选择器</title>
<style>
.zong {
display: flex;
flex-direction: row;
flex-flow: row wrap;
}
.button_diva {
border-radius: 5px;
background-color: blue;
padding: 0.5rem;
width: auto;
margin: 0.5rem;
color: #fff;
}
.avtiv {
background-color: #000;
}
.avtivtwo {
background-color: red;
}
.shuju {
display: flex;
flex-direction: column;
}
</style>
</head>
<body>
<div id="Vue">
<div class="zong">
<!-- class="item.index == status ? 'avtiv':''" 中item.index获取的是sites中的index 此处用的是三元法 ?代表否则-->
<div class="button_diva" :class="item.index == status ? 'avtiv':''" v-for="(item,index) in sites"
:key="index" @click="bintap(item,index)">
<p>{{item.name}}</p>
</div>
</div>
<div class="zong">
<div class="button_diva" :class="index == statuss ? 'avtivtwo':''" v-for="(item,index) in sitestwo"
:key="index" @click="bintaptwo(index)">
<p>{{item.name}}</p>
</div>
</div>
<div class="shuju">
<div>
{{name}}
</div>
</div>
</div>
</body>
<script>
new Vue({
el: "#Vue",
data: {
status: 0,
statuss: 1,
sites: [
{
name: 'Runoob',
index: 0
},
{
name: 'Google',
index: 1
},
{
name: 'Taobao',
index: 2
},
{
name: 'zhoayun',
index: 3
}
],
sitestwo: [
{
name: '西瓜',
index: 0
},
{
name: '大师',
index: 1
},
{
name: '探讨',
index: 2
},
{
name: '嗷嗷嗷',
index: 3
}
],
name: 123,
},
methods: {
bintap(item, index) {
console.log(item.index)
this.status = item.index
if (item.index == 0) {
this.sitestwo = [
{
name: '西瓜',
index: 0
},
{
name: '大师',
index: 1
},
{
name: '探讨',
index: 2
},
{
name: '嗷嗷嗷',
index: 3
}
]
} else if (item.index == 1) {
this.sitestwo = [
{
name: '西a瓜',
index: 0
},
{
name: '大a师',
index: 1
},
{
name: '探a讨',
index: 2
},
]
} else if (item.index == 2) {
this.sitestwo = [
{
name: '西a瓜b',
index: 0
},
{
name: '大a师b',
index: 1
},
{
name: '探a讨b',
index: 2
},
]
} else if (item.index == 3) {
this.sitestwo = [
{
name: 'c西瓜b',
index: 0
},
{
name: '大c师b',
index: 1
},
{
name: '探c讨b',
index: 2
},
]
}
},
bintaptwo(index) {
this.statuss = index
if (index == 0) {
this.name = 123
} else if (index == 1) {
this.name = 456
}
else if (index == 2) {
this.name = 789
}
else if (index == 3) {
this.name = 'aaa'
}
},
},
created() {
}
})
</script>
<script>
$(document).ready(function () {
});
</script>
</html>