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

vue.js实现点击后动态添加class及删除同级class的实现代码

程序员文章站 2022-05-07 16:36:56
最近使用vue需要实现一个点餐选择商品规格的页面,需要通过vue动态的给被点击的元素添加class名字,使其变色,其他的删除class。如图: 开始在网上找了许多办法...

最近使用vue需要实现一个点餐选择商品规格的页面,需要通过vue动态的给被点击的元素添加class名字,使其变色,其他的删除class。如图:

vue.js实现点击后动态添加class及删除同级class的实现代码

开始在网上找了许多办法发现不是太好用,最后找到一个发现还是不错的,记录一下

html:

<div class="weui-mask" id="guige">
    <div class="guigebox">
     <p class="guigetitle">{{guigename}}</p>
     <p class="guigep guigep01">规格</p>
     <div class="indexguige">
      <span v-for="value,index in guigelist" v-on:click="guige(index)" v-bind:class="{on:index==guigespan}">{{value.guige_name}}</span>
     </div>
     <p class="guigep">口味</p>
     <div class="indexkouwie">
      <span v-for="value,index in kouweilist" v-on:click="kouwei(index)" v-bind:class="{on:index==kouweispan}">{{value.guige_name}}</span>
     </div>
    </div>
   </div>

script:

var guige=new vue({
    el: '#guige',
    data:{
     guigespan:"-1", //控制点亮状态 -1为默认不点亮
     kouweispan:"-1", //控制点亮状态 
    },
   methods:{
     guige:function(index){ //当点击时候点亮,同级的span标签删除class
      this.guigespan = index;
     },
     kouwei:function(index){
      this.kouweispan = index;
     },
    }
   })

总结

以上所述是小编给大家介绍的vue.js实现点击后动态添加class及删除同级class,希望对大家有所帮助