代码改变世界

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

  我的益达  阅读(33764)  评论(0编辑  收藏  举报

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

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

html:

复制代码
 1        <div class="weui-mask" id="guige">
 2                 <div class="guigeBox">
 3                     <p class="guigeTitle">{{guigeName}}</p>
 4                     <p class="guigeP guigeP01">规格</p>
 5                     <div class="indexGuiGe">
 6                         <span v-for="value,index in guigeList" v-on:click="guige(index)" v-bind:class="{on:index==guigeSpan}">{{value.guige_name}}</span>
 7                     </div>
 8                     <p class="guigeP">口味</p>
 9                     <div class="indexKouwie">
10                         <span v-for="value,index in kouweiList" v-on:click="kouwei(index)" v-bind:class="{on:index==kouweiSpan}">{{value.guige_name}}</span>
11                     </div>
15                 </div>
16             </div>
复制代码

script:

复制代码
 1              var guige=new Vue({
 2                 el: '#guige',
 3                 data:{
 4                     guigeSpan:"-1",  //控制点亮状态 -1为默认不点亮
 5                     kouweiSpan:"-1",  //控制点亮状态 
 6                 },
 7             methods:{
 8                     guige:function(index){  //当点击时候点亮,同级的span标签删除Class
 9                         this.guigeSpan = index;
10                     },
11                     kouwei:function(index){
12                         this.kouweiSpan = index;
13                     },
14                }
15             })
复制代码

参考:http://blog.csdn.net/xiao_yu_liu/article/details/55515244

编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示