vue中三个view点击谁,谁的背景变成白色
时间: 2024-02-25 19:52:07 浏览: 15
可以通过以下代码实现:
HTML部分:
```
<div id="app">
<div id="div1" @click="changeColor('div1')" :class="{ white: selected === 'div1' }"></div>
<div id="div2" @click="changeColor('div2')" :class="{ white: selected === 'div2' }"></div>
<div id="div3" @click="changeColor('div3')" :class="{ white: selected === 'div3' }"></div>
</div>
```
CSS部分:
```
div {
width: 100px;
height: 100px;
display: inline-block;
background-color: blue;
cursor: pointer;
}
.white {
background-color: white;
}
```
JavaScript部分:
```
new Vue({
el: "#app",
data: {
selected: ""
},
methods: {
changeColor: function(id) {
this.selected = id;
}
}
})
```
在Vue中,我们可以使用:class指令动态绑定类名,并且使用methods定义Vue实例的方法。当点击任意一个div时,changeColor方法会更新selected变量的值,然后:class指令会根据selected的值来动态绑定类名,从而实现对应div的背景颜色的变化。