最近使用vue需要實現一個點餐選擇商品規格的頁面,需要通過vue動態的給被點擊的元素添加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,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。