微信小程序-button組件


主要屬性:

注:button-hover 默認為{background-color: rgba(0, 0, 0, 0.1); opacity: 0.7;}

效果圖:

ml:

復制代碼
<!--默認的button, 默認大小default,默認加載false,默認按鍵不為鏤空,默認可以點擊,點擊有效果hover-class="other-button-hover"--> <button type="default" size="{{defaultSize}}" loading="{{loading}}" plain="{{plain}}" disabled="{{disabled}}" bindtap="setDefault" hover-class="other-button-hover" class="margin-button"> default </button> <!--主要的按鈕,點擊背景沒有效果hover-class="none" --> <button type="primary" size="{{primarySize}}" loading="{{loading}}" plain="{{plain}}" disabled="{{disabled}}" bindtap="setPrimary" hover-class="none" class="margin-button"> primary </button> <!--警告按鈕,點擊背景有效果hover-class="button-hover" --> <button type="warn" size="{{warnSize}}" loading="{{loading}}" plain="{{plain}}" disabled="{{disabled}}" bindtap="setWarn" hover-class="button-hover" class="margin-button"> warn </button> <button bindtap="setDisabled" class="margin-button">點擊設置以上按鈕disabled屬性</button> <button bindtap="setPlain" class="margin-button">點擊設置以上按鈕plain屬性</button> <button bindtap="setLoading" class="margin-button">點擊設置以上按鈕loading屬性</button> <button bindtap="setSize" class="margin-button">點擊設置以上按鈕size屬性</button>
復制代碼

 

ss:

復制代碼
/** wxss **/ /** 修改button默認的點擊態樣式類**/ .button-hover { background-color: yellow; opacity: 0.7; } /** 添加自定義button點擊態樣式類**/ .other-button-hover { background-color: green; opacity: 0.7; } .margin-button{ margin-top: 10px; }
復制代碼

 

js:

復制代碼
var pageObject = { data: { defaultSize: 'default',////有效值 default, mini primarySize: 'default', warnSize: 'default', disabled: false, plain: false, loading: false }, //設計是否禁用 setDisabled: function(e) { this.setData({ disabled: !this.data.disabled }) }, //設計按鈕是否鏤空,背景色透明 setPlain: function(e) { this.setData({ plain: !this.data.plain }) }, //設計按鈕名稱前是否帶 loading 圖標 setLoading: function(e) { this.setData({ loading: !this.data.loading }) }, //設計按鈕的大小 setSize:function(){ this.setData({ defaultSize: this.data.defaultSize=='default' ? 'mini' : 'default',////有效值 default, mini primarySize: this.data.defaultSize=='default' ? 'mini' : 'default', warnSize: this.data.defaultSize=='default' ? 'mini' : 'default', }) }, setDefault:function(){ console.log('setDefault....') }, setWarn:function(){ console.log('setWarn....') }, setPrimary:function(){ console.log('setPrimary....') }, } Page(pageObject)

根據官方開發文檔,在wxss中定義類名樣式,就可以自定義按鈕按下去的樣式。但是我在開發中,發現直接這樣寫沒有效果:

.button-hover {
  background-color: grey;
}

檢查下來發現原因是,button已經自定義了背景色,樣式選擇權重有影響,button的樣式如下:

.wrap button {
  background-color: green;
}

因此把hover選擇器修改一下就可以了:

.wrap button.button-hover {
  background-color: grey;
}


 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM