微信小程序实现简单的select下拉框


Posted in Javascript onNovember 23, 2020

微信小程序实现一个简单的select下拉框,供大家参考,具体内容如下

用的是transform过渡,没用动画

看看效果

微信小程序实现简单的select下拉框

废话不多说,直接上代码

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,
 })
 },

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript addBookmark 加入收藏 多浏览器兼容
Aug 15 Javascript
juery框架写的弹窗效果适合新手
Nov 27 Javascript
检测一个函数是否是JavaScript原生函数的小技巧
Mar 13 Javascript
js实现StringBuffer的简单实例
Sep 02 Javascript
jQuery实现简单弹窗遮罩效果
Feb 27 Javascript
JS字符串统计操作示例【遍历,截取,输出,计算】
Mar 27 Javascript
AngularJS 单选框及多选框的双向动态绑定
Apr 20 Javascript
vue中$set的使用(结合在实际应用中遇到的坑)
Jul 10 Javascript
JavaScript模板引擎实现原理实例详解
Dec 14 Javascript
使用vue-router切换页面时实现设置过渡动画
Oct 31 Javascript
VueJS实现用户管理系统
May 29 Javascript
微信小程序实现点击页面出现文字
Sep 21 Javascript
记录一次websocket封装的过程
Nov 23 #Javascript
一篇文章让你搞懂JavaScript 原型和原型链
Nov 23 #Javascript
微信小程序实现锚点跳转
Nov 23 #Javascript
javascript实现电商放大镜效果
Nov 23 #Javascript
用webAPI实现图片放大镜效果
Nov 23 #Javascript
Vue 的 v-model用法实例
Nov 23 #Vue.js
JavaScript实现网页留言板功能
Nov 23 #Javascript
You might like
php中var_export与var_dump的区别分析
2010/08/21 PHP
PHP+Mysql日期时间如何转换(UNIX时间戳和格式化日期)
2012/07/15 PHP
php计算数组不为空元素个数的方法
2014/01/27 PHP
php+mysqli使用面向对象方式更新数据库实例
2015/01/29 PHP
php编写批量生成不重复的卡号密码代码
2015/05/14 PHP
PHP结合jQuery插件ajaxFileUpload实现异步上传文件实例
2020/08/17 PHP
学习php设计模式 php实现建造者模式
2015/12/07 PHP
Yii2 assets清除缓存的方法
2016/05/16 PHP
Yii2.0 Basic代码中路由链接被转义的处理方法
2016/09/21 PHP
php xhprof使用实例详解
2019/04/15 PHP
php设计模式之模板模式实例分析【星际争霸游戏案例】
2020/03/24 PHP
PHP代码覆盖率统计详解
2020/07/22 PHP
jquery 模式对话框终极版实现代码
2009/09/28 Javascript
Javascript结合css实现网页换肤功能
2009/11/02 Javascript
引用外部脚本时script标签关闭的写法
2014/01/20 Javascript
javascript关于open.window子页面执行完成后刷新父页面的问题分析
2015/04/27 Javascript
Bootstrap源码解读模态弹出框(11)
2016/12/28 Javascript
如何制作幻灯片(代码分享)
2017/01/06 Javascript
jQuery实现鼠标响应式淘宝动画效果示例
2018/02/13 jQuery
Javascript实现购物车功能的详细代码
2018/05/08 Javascript
layui点击弹框页面 表单请求的方法
2019/09/21 Javascript
分析Python中设计模式之Decorator装饰器模式的要点
2016/03/02 Python
对python借助百度云API对评论进行观点抽取的方法详解
2019/02/21 Python
python二进制文件的转译详解
2019/07/03 Python
python实现扑克牌交互式界面发牌程序
2020/04/22 Python
python中如何写类
2020/06/29 Python
HTML5的hidden属性兼容老浏览器的方法
2014/04/23 HTML / CSS
L’Artisan Parfumeur官网:法国香水品牌
2020/08/11 全球购物
腾讯技术类校园招聘笔试试题
2014/05/06 面试题
简述网络文件系统NFS,并说明其作用
2016/10/19 面试题
个性发展自我评价
2014/02/11 职场文书
股份合作协议书
2014/09/10 职场文书
办护照工作证明
2014/10/01 职场文书
给老婆的保证书怎么写
2015/05/08 职场文书
岁月神偷观后感
2015/06/11 职场文书
分享MySQL常用 内核 Debug 几种常见方法
2022/03/17 MySQL