微信小程序中的下拉框怎样做?在实际的项目中,我们常会遇到实现下拉框效果的需求,今天我们就来了解一下怎样做一个简单的小程序中的select下拉框,这里使用到的是transform过渡,实现效果及代码如下。
看看效果
废话不多说,直接上代码
wxml:
<view class="item"> <label class="first"><text>*</text>公司/商户类型:</label> <!-- 通过点击事件改变图片的旋转角度、自定义下拉框的高度 --> <view class="value" bindtap="select"> <view style="display:inline-block;">{{type!=''?type:'选择商户类型'}}</view> <image src="../img/sj@2x.png" class="sanjiao" style="{{isSelect?'transform:rotateZ(180deg)':''}}"/> <!-- select --> <view class="select" style="{{isSelect?'height:'+54*types.length+'rpx;':'border:0'}}"> <view class="type" catchtap="getType" wx:for="{{types}}" data-type="{{item}}" wx:key="type">{{item}}</view> </view> </view> </view>
wxss:
.sanjiao{ width: 18rpx; height: 10rpx; margin-left: 20rpx; transition: 0.5s;/* 选转图片过渡 */ } .select{ position: absolute; z-index: 10; border: 2rpx solid #aaaaaa; padding: 0 8rpx; top:46rpx; left: -10rpx; width: 210rpx; overflow: auto; height: 0; max-height: 200rpx; background-color:#fff; box-sizing: border-box; transition: height 0.5s;/* 高度变换过渡 */ } .select .type{ color: #aaaaaa; border-top: 2px solid #dadada; padding: 6rpx; } .select :first-child{ border: 0; }
js
data: { isSelect:false,//展示类型? types:['类型一','类型二'],//公司/商户类型 type:"",//公司/商户类型 }, //点击控制下拉框的展示、隐藏 select:function(){ var isSelect = this.data.isSelect this.setData({ isSelect:!isSelect}) }, //点击下拉框选项,选中并隐藏下拉框 getType:function(e){ let value = e.currentTarget.dataset.type this.setData({ type:value , isSelect: false, }) },
以上就是实现微信小程序中的下拉框的代码了,有需要的朋友可以参考了解看看,希望对大家学习或工作有帮助,想要了解更多可以继续浏览群英网络其他相关的文章。
文本转载自脚本之家
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
长按识别二维码并关注微信
更方便到期提醒、手机管理