vue2中给遍历出来的三个div实现点击切换背景颜色
时间: 2024-02-26 15:56:23 浏览: 73
好的,可以使用Vue来实现。首先需要在Vue组件中定义一个data属性,用来存储每个div的背景颜色。然后在模板中使用v-for指令遍历出所有的div元素,为每个元素绑定点击事件,事件触发时切换该元素的背景颜色。
以下是示例代码:
```html
<!-- HTML代码 -->
<div id="app">
<div v-for="(div, index) in divs" :key="index" :style="{ backgroundColor: div.color }" @click="toggleColor(div)">
div {{ index + 1 }}
</div>
</div>
```
```javascript
// JavaScript代码
new Vue({
el: '#app',
data: {
divs: [
{ color: '' },
{ color: '' },
{ color: '' }
]
},
methods: {
toggleColor: function(div) {
div.color = div.color === 'red' ? '' : 'red';
}
}
});
```
这段代码会在Vue实例中定义一个data属性divs,用来存储每个div的背景颜色。在模板中使用v-for指令遍历出所有的div元素,为每个元素绑定点击事件。点击事件会调用toggleColor方法,该方法会判断当前元素的背景颜色是否为红色,如果是则将背景颜色设为空,否则将背景颜色设为红色。这样就可以实现点击切换背景颜色的效果了。
阅读全文