欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

vue实现点击当前标签高亮效果 之法

程序员文章站 2022-05-26 19:09:56
...

倦流年,韶华蹉跎,岁月如歌,时间流过。

效果如下
vue实现点击当前标签高亮效果 之法
在data中定义即将渲染的数据,及active

data() {
  return {
   wpList: [
    {
     name: '食品饮料'
    },
    {
     name: '鲜花'
    },
    {
     name: '蛋糕'
    },
    {
     name: '水果生鲜'
    },
    {
     name: '服装鞋帽'
    },
    {
     name: '其它'
    }
   ],
   active:''
  }
 }

定义高亮的标签类名

.active {
        background:rgba(255,241,242,1) !important;
        border:1px solid rgba(235,70,84,1);
    }

动态渲染按钮的数据,并动态的增加active类名(当active为当前name值时添加),添加点击事件(点击时让active=name)

<li v-for=" (item, i) in wpList" :key="i" class="list" :class="{active : active == item.name}" @click="courseVideoLi(item.name)">
      <div class="listLeftBox">
          <span class="num">{{ i < 10 ?'0' + i : i}}</span>
          <span class="title">正常人为什么看不出腹肌看不出腹肌?</span>
      </div>
      <span v-if="active != item.name" class="novideoPlayImgBox"></span> <!-- 未选中状态 -->
      <span v-if="active == item.name" class="videoPlayImgBox"></span> <!-- 选中状态 -->
  </li>

在methods中定义点击事件函数

courseVideoLi(name) {
    this.active = name;
}

再此附上我的QQ: 2489757828 有问题的话可以找我共同探讨
我的私人博客: 李大玄