在小程序開發中會經常出現動態控制某一元素的樣式(如:動態添加字體顏色或者背景)
第一步:在wxss中定義被點擊和未被點擊的樣式,如下:
.is_checked{ border: 1px solid #FE0002 ; color: #FE0002 ; background: #fff; } .service_selection .normal{ border: none; color: #333; background: #F0F1EC; }
第二步:在js文件中的data中設置一個flag,叫他isChecked,默認isChecked==false。如下:
data: { isChecked: false }
第三步:在wxml文件中綁定點擊事件,
<view bindtap="serviceSelection"></view>
在js文件中實現這個方法,並另他點擊后設置isChecked==true。如下:
serviceSelection(){ this.setData({ isChecked:true }) } //this.setData()是用來修改data中實例的值的
第四步:依然是在wxml文件中進行數據綁定:
<view class="{{isChecked?'is_checked':'normal'}}" bindtap="serviceSelection"></view>
重點是這一句代碼
{{isChecked?'is_checked':'normal'}}"
這是一個三目運算符,當isChecked==true時,在class加上is_checked的樣式,為flase時使用normal的樣式。這一點的實現類似php控制樣式類名的語法。
轉載案例:https://www.cnblogs.com/jiangwenxin/p/13640766.html