微信小程序 action-sheet底部菜单详解


Posted in Javascript onOctober 27, 2016

微信小程序 action-sheet

action-sheet是从底部弹出的选择菜单,子菜单通过action-sheet-item和action-sheet-cancel指定,action-sheet-item是菜单项,action-sheet-cancel顾名思义是取消隐藏菜单,我们可以通过为action-sheet-item添加bindtap来触发点击后作出的相应,点击action-sheet-cancel时会触发action-sheet的bindchange事件。可以在bindchange绑定的函数中控制菜单的显示。另外点击空白处时菜单也会隐藏。

官方文档

 微信小程序 action-sheet底部菜单详解

 .wxml

<button type="default" bindtap="actionSheetTap">弹出action sheet</button>
<action-sheet hidden="{{actionSheetHidden}}" bindchange="actionSheetChange">
  <block wx:for-items="{{actionSheetItems}}">
    <action-sheet-item bindtap="bind{{item}}">{{item}}</action-sheet-item>
  </block>
  <action-sheet-cancel >取消</action-sheet-cancel>
</action-sheet>

.js

var items = ['item1', 'item2', 'item3', 'item4']
var pageObject = {
 data: {
  actionSheetHidden: true,
  actionSheetItems: items
 },
 actionSheetTap: function(e) {
  console.log(this);
  this.setData({
   actionSheetHidden: !this.data.actionSheetHidden
  })
 },
 actionSheetChange: function(e) {
  this.setData({
   actionSheetHidden: !this.data.actionSheetHidden
  });
  console.log("点击ation-sheet-cancel,会触发action-sheet绑定的事件。在这里可以通过改变hidden控制菜单的隐藏");
 }
}

for (var i = 0; i < items.length; ++i) {
 (function(itemName) {
  pageObject['bind' + itemName] = function(e) {
   console.log('click' + itemName, e)
  }
 })(items[i])
}

Page(pageObject)

运行效果

微信小程序 action-sheet底部菜单详解

如何让点击空白处时不隐藏图片呢?另外点击取消的时候自动隐藏菜单不就算了,非要自己写一句话让它隐藏,真麻烦。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
JS版网站风格切换实例代码
Oct 06 Javascript
Extjs学习过程中新手容易碰到的低级错误积累
Feb 11 Javascript
jQuery 表格插件整理
Apr 27 Javascript
Javascript 面向对象 对象(Object)
May 13 Javascript
Tab切换组件(选项卡功能)实例代码
Nov 21 Javascript
jQuery使用drag效果实现自由拖拽div
Jun 11 Javascript
jquery中ajax处理跨域的三大方式
Jan 05 Javascript
canvas知识总结
Jan 25 Javascript
AngularJS中ng-class用法实例分析
Jul 06 Javascript
vue组件初学_弹射小球(实例讲解)
Sep 06 Javascript
jquery分页插件pagination使用教程
Oct 23 jQuery
微信小程序实现侧边栏分类
Oct 21 Javascript
JS短信验证码倒计时功能的实现(没有验证码,只有倒计时)
Oct 27 #Javascript
微信小程序  modal弹框组件详解
Oct 27 #Javascript
从0开始学Vue
Oct 27 #Javascript
微信小程序  Mustache语法详细介绍
Oct 27 #Javascript
利用JQuery直接调用asp.net后台的简单方法
Oct 27 #Javascript
JavaScript登录验证码的实现
Oct 27 #Javascript
微信小程序  自定义创建详细介绍
Oct 27 #Javascript
You might like
PHP实现通过正则表达式替换回调的内容标签
2015/06/15 PHP
thinkphp3.2.3 分页代码分享
2016/07/28 PHP
PHP基于进程控制函数实现多线程
2020/12/09 PHP
js文件中调用js的实现方法小结
2009/10/23 Javascript
实用的JS正则表达式(手机号码/IP正则/邮编正则/电话等)
2013/01/11 Javascript
jQuery contains过滤器实现精确匹配使用方法
2013/04/12 Javascript
jquery 实现两Select 标签项互调示例代码
2014/09/25 Javascript
JS简单实现禁止访问某个页面的方法
2016/09/13 Javascript
JavaScript实现的冒泡排序法及统计相邻数交换次数示例
2017/04/26 Javascript
Node.js+Express+MySql实现用户登录注册功能
2017/07/10 Javascript
Koa2 之文件上传下载的示例代码
2018/03/29 Javascript
Vue表单类的父子组件数据传递示例
2018/05/03 Javascript
webpack中如何加载静态文件的方法步骤
2019/05/18 Javascript
vue实现按需加载组件及异步组件功能
2019/05/27 Javascript
JavaScript中的几种继承方法示例
2020/12/06 Javascript
[08:02]DOTA2牵红线 zhou神抱得美人归
2014/03/22 DOTA
[02:23]1个至宝=115个英雄特效 最“绿”至宝拉比克“魔导师密钥”登场
2018/12/29 DOTA
安装Python的web.py框架并从hello world开始编程
2015/04/25 Python
Python base64编码解码实例
2015/06/21 Python
基于Python实现的微信好友数据分析
2018/02/26 Python
Python基于pycrypto实现的AES加密和解密算法示例
2018/04/10 Python
python中dict字典的查询键值对 遍历 排序 创建 访问 更新 删除基础操作方法
2018/09/13 Python
Python产生Gnuplot绘图数据的方法
2018/11/09 Python
python 自定义对象的打印方法
2019/01/12 Python
python里运用私有属性和方法总结
2019/07/08 Python
tensorflow 环境变量设置方式
2020/02/06 Python
python:解析requests返回的response(json格式)说明
2020/04/30 Python
如何在Python对Excel进行读取
2020/06/04 Python
利用CSS3实现平移动画效果示例代码
2016/10/12 HTML / CSS
简单介绍HTML5中audio标签的使用
2015/09/24 HTML / CSS
法国娇韵诗官方旗舰店:Clarins是来自法国的天然护肤品牌
2018/06/30 全球购物
Snapfish爱尔兰:在线照片打印和个性化照片礼品
2018/09/17 全球购物
小区门卫岗位职责
2013/12/31 职场文书
暗恋桃花源观后感
2015/06/12 职场文书
小学语文继续教育研修日志
2015/11/13 职场文书
HTML中实现音乐或视频自动播放案例详解
2022/05/30 HTML / CSS