vue -点击某个元素 改变其样式(如背景色或更换图片) 实现点击选中效果

本文介绍如何在Vue中通过点击事件改变元素的样式,如切换背景色或替换图片。通过绑定CSS样式和JavaScript逻辑,在数据中记录选中状态,并在组件生命周期中处理图片路径。

效果:

在这里插入图片描述

代码

<el-col
                    :span="12"
                    v-for="item in storeData.store"
                    :key="item.code"
                    class="eachStore"
                  >
                    <span class="eachStore">
                      <img
                        :src="
                          starStoresCode.indexOf(item.code) == -1
                            ? starUrl
                            : starBlueUrl
                        "
                        class="star"
                        @click="addStarStores(item)"
                      />
                      <span
                        @click="selectStore(item)"
                        :class="{
                          bk: selectStoreCode.indexOf(item.code) !== -1
                        }"
                        style="font-size: 14px"
                        >{{ item.name }}</span
                      >
                    </span>
                  </el-col>

css:

.bk {
  background-color: rgb(0, 255, 255);
}

js:(若要实现点击更改图片,需要现在data中定义,且在created生命周期中require路径赋值)

data() {
    return {
      starUrl: '',
      starBlueUrl: '',
      
    }
  },
  watch: {},
  created() {
    this.starUrl = require('@/assets/icons/star.png')
    this.starBlueUrl = require('@/assets/icons/starBlue.png')
  },

selectStoreCode 就是把选中的 code 单独拿出来的数组

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值