国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 課堂 > 小程序 > 正文

微信小程序實現下拉框功能

2020-03-21 15:51:44
字體:
來源:轉載
供稿:網友

微信小程序里沒有和HTML里的下拉框一樣的組件,想要相同的效果只能自己寫一個,先看效果

微信小程序,下拉框

下面來看一下代碼:

首先WXML

<view class='select_box'>  <view class='select' catchtap='selectTap'>    <text class='select_text'>{{selectData[index]}}</text>    <image class='select_img {{show&&"select_img_rotate"}}' src='/image/gobottom.png'></image>       </view>  <view class='option_box' style='height:{{show?(selectData.length>5?300:selectData.length*60):0}}rpx;'>    <text class='option' style='{{index==selectData.length-1&&"border:0;"}}' wx:for='{{selectData}}' wx:key='this' data-index='{{index}}' catchtap='optionTap'>{{item}}</text>  </view></view><!-- show&&"select_img_rotate"-----給顯示框右邊的下拉箭頭添加動畫 height:{{show?(selectData.length>5?300:selectData.length*60):0}}rpx;-----給改變下拉框高度,實現下拉框的顯示隱藏,每個下拉選項的高度為60,下拉框的最大高度這里設置的是300,所以這里寫成當數據長度大于5時,下拉框高度為300,反之下拉框高度為數據長度乘以60 index==selectData.length-1&&"border:0;"-----取消下拉選項的最后一個的下邊框 -->

然后WXSS(如果不想要動畫,刪掉wxss里的transition:transform 0.3s;和transition: height 0.3s;即可)

page{ background: #f3f7f7;}.select_box{ background: #fff; width: 80%; margin: 30rpx auto; position: relative;}.select{ box-sizing: border-box; width: 100%; height: 70rpx; border:1px solid #efefef; border-radius: 8rpx; display: flex; align-items: center; padding: 0 20rpx;}.select_text{ font-size: 30rpx; flex: 1;}.select_img{ width: 40rpx; height: 40rpx; display: block; transition:transform 0.3s;}.select_img_rotate{ transform:rotate(180deg); }.option_box{ position: absolute; top: 70rpx; width: 100%; border:1px solid #efefef; box-sizing: border-box; height: 0; overflow-y: auto; border-top: 0; background: #fff; transition: height 0.3s;}.option{ display: block; line-height: 40rpx; font-size: 30rpx; border-bottom: 1px solid #efefef; padding: 10rpx;}

這里是JS

 

Page({ data: {  show:false,//控制下拉列表的顯示隱藏,false隱藏、true顯示  selectData:['1','2','3','4','5','6'],//下拉列表的數據  index:0//選擇的下拉列表下標 }, // 點擊下拉顯示框 selectTap(){  this.setData({   show: !this.data.show  }); }, // 點擊下拉列表 optionTap(e){  let Index=e.currentTarget.dataset.index;//獲取點擊的下拉列表的下標  this.setData({   index:Index,   show:!this.data.show  }); }, onLoad: function (options) {  }})

完結!

有什么錯誤或者其他好的方法,請告知,謝謝

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 龙南县| 定兴县| 道真| 栾城县| 雷州市| 商丘市| 东丰县| 南开区| 安丘市| 赣榆县| 涞水县| 屏南县| 泗阳县| 吉木萨尔县| 闽清县| 盐边县| 高青县| 庆云县| 广饶县| 昭觉县| 来凤县| 夏邑县| 庆安县| 博罗县| 钟祥市| 黄大仙区| 汉川市| 汉阴县| 凤庆县| 太原市| 瑞金市| 庆元县| 聊城市| 东丽区| 贺州市| 鄂尔多斯市| 孟津县| 永安市| 常熟市| 威海市| 洞口县|