微信小程序实现折叠展开效果


Posted in Javascript onJuly 19, 2018

本文实例为大家分享了微信小程序实现折叠展开效果的具体代码,供大家参考,具体内容如下

wxml:

<view class="page">
<!-- 总数 -->
<view class="li" bindtap='changeToggle'>
<view class="left">总数</view>
<view class="right gray" >8</view>
</view>

<!--分类 -->
<view class="li" data-index="0" bindtap='changeToggle'>
<view class="left">类别1</view>
<view class="right">3 <text class="iconfont {{selectedFlag[0]?'icon-shangjiantou':'icon-xiala'}}"> </text>
  </view>
 </view>
 <view hidden="{{!selectedFlag[0]}}">
 <block wx:for="{{list01}}" wx:for-item="item" wx:for-index="index">
  <view class="li bg-gray">
  <view>展开1</view>
  </view>
 </block>
 </view>

 <view class="li" data-index="1" bindtap='changeToggle'>
 <view class="left">类别2</view>
 <view class="right">0
  <text class="iconfont {{selectedFlag[1]?'icon-shangjiantou':'icon-xiala'}}"> </text>
 </view>
 </view>
 <view hidden="{{!selectedFlag[1]}}">
 <block wx:for="{{list02}}" wx:for-item="item" wx:for-index="index">
  <view class="li bg-gray">
  <view>展开2</view>

  </view>
 </block>
 </view>

 <view class="li" data-index="2" bindtap='changeToggle'>
 <view class="left">类别3</view>
 <view class="right red">2
  <text class="iconfont {{selectedFlag[2]?'icon-shangjiantou':'icon-xiala'}}"> </text>
 </view>
 </view>
 <view hidden="{{!selectedFlag[2]}}">
 <block wx:for="{{list03}}" wx:for-item="item" wx:for-index="index">
  <view class="li bg-gray">
  <view>展开3</view>

  </view>
 </block>
 </view>


 <view class="li" data-index="3" bindtap='changeToggle'>
 <view class="left">类别4</view>
 <view class="right red">3
  <text class="iconfont {{selectedFlag[3]?'icon-shangjiantou':'icon-xiala'}}"> </text>
 </view>
 </view>
 <view hidden="{{!selectedFlag[3]}}">
 <block wx:for="{{list04}}" wx:for-item="item" wx:for-index="index">
  <view class="li bg-gray">
  <view>展开4</view>
  <view class="red">展开4右边</view>
  </view>
 </block>
 </view>

wxss:

/* 列表详情 */

.li {
 background-color: #fff;
 display: flex;
 justify-content: space-between;
 font-size: 34rpx;
 width: 92%;
 padding: 0 4%;
 height: 100rpx;
 line-height: 100rpx;
 border-bottom: 1rpx solid #f1f1f1;
}
.bg-gray{
 background-color: #ccc!important;
 border-bottom: 1rpx solid #fff!important;
}

.li .icon-xiala ,.icon-shangjiantou {
 color: #999;
 font-size: 28rpx;
}

.gray {
 color: #8e8e8e;
}

.red {
 color: #fe2e2e;
}

js:

Page({
 data: {

 list01: [
  { item_id: 1 }, { item_id: 11 }, { item_id: 11 },
 ],
 list02: [

 ],
 list03: [
  { item_id: 11 }, { item_id: 11 }
 ],
 list04: [
  { item_id: 11 }, { item_id: 11 }, { item_id: 11 }
 ],

 // 展开折叠
 selectedFlag: [false, false, false, false],

 },
 // 展开折叠选择 
 changeToggle:function(e){
 var index = e.currentTarget.dataset.index;
 if (this.data.selectedFlag[index]){
  this.data.selectedFlag[index] = false;
 }else{
  this.data.selectedFlag[index] = true;
 }

 this.setData({
  selectedFlag: this.data.selectedFlag
 })
 },

})

效果图,手风琴效果:

微信小程序实现折叠展开效果

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

Javascript 相关文章推荐
Javascript异步表单提交,图片上传,兼容异步模拟ajax技术
May 10 Javascript
复制小说文本时出现的随机乱码的去除方法
Sep 07 Javascript
js实现运动logo图片效果及运动元素对象sportBox使用方法
Dec 25 Javascript
使用JavaScript实现Java的List功能(实例讲解)
Nov 07 Javascript
Jquery使用Firefox FireBug插件调试Ajax步骤讲解
Dec 02 Javascript
Javascript中的高阶函数介绍
Mar 15 Javascript
深入浅析JavaScript中的constructor
Apr 19 Javascript
原生js实现可拖动的登录框效果
Jan 21 Javascript
Node.JS文件系统解析实例详解
May 15 Javascript
vuex学习之Actions的用法详解
Aug 29 Javascript
小白教程|一小时上手最流行的前端框架vue(推荐)
Apr 10 Javascript
关于vue-router-link选择样式设置
Apr 30 Vue.js
详解Angularjs 自定义指令中的数据绑定
Jul 19 #Javascript
微信小程序实现天气预报功能
Jul 18 #Javascript
vue代理和跨域问题的解决
Jul 18 #Javascript
小程序自定义组件实现城市选择功能
Jul 18 #Javascript
微信小程序实践之动态控制组件的显示/隐藏功能
Jul 18 #Javascript
微信小程序项目实践之主页tab选项实现
Jul 18 #Javascript
详解性能更优越的小程序图片懒加载方式
Jul 18 #Javascript
You might like
php实现上传图片生成缩略图示例
2014/04/13 PHP
php5.4以下版本json不支持不转义内容中文的解决方法
2015/01/13 PHP
浅谈php错误提示及查错方法
2015/07/14 PHP
[原创]php使用curl判断网页404(不存在)的方法
2016/06/23 PHP
Apache无法自动跳转却显示目录的解决方法
2020/11/30 PHP
Django中通过定时任务触发页面静态化的处理方式
2018/08/29 PHP
ThinkPHP3.2框架操作Redis的方法分析
2019/05/05 PHP
php使用curl伪造浏览器访问操作示例
2019/09/30 PHP
纯JavaScript实现HTML5 Canvas六种特效滤镜示例
2013/06/28 Javascript
Javascript核心读书有感之类型、值和变量
2015/02/11 Javascript
Bootstrap学习系列之使用 Bootstrap Typeahead 组件实现百度下拉效果
2016/07/07 Javascript
JS判断浏览器是否安装flash插件的简单方法
2016/09/13 Javascript
js style.display=block显示布局错乱问题的解决方法
2016/09/21 Javascript
百度多文件异步上传控件webuploader基本用法解析
2016/11/07 Javascript
微信小程序 地图map详解及简单实例
2017/01/10 Javascript
深入剖析JavaScript instanceof 运算符
2019/06/14 Javascript
vue的路由映射问题及解决方案
2019/10/14 Javascript
vue 实现websocket发送消息并实时接收消息
2019/12/09 Javascript
[54:41]2018DOTA2亚洲邀请赛3月30日 小组赛B组 VGJ.T VS paiN
2018/03/31 DOTA
Python httplib,smtplib使用方法
2008/09/06 Python
Django框架中render_to_response()函数的使用方法
2015/07/16 Python
Python函数装饰器实现方法详解
2018/12/22 Python
Python如何使用函数做字典的值
2019/11/30 Python
Pytorch十九种损失函数的使用详解
2020/04/29 Python
浅谈Python描述数据结构之KMP篇
2020/09/06 Python
Python实现简单猜数字游戏
2021/02/03 Python
CSS3实现精美横向滚动菜单按钮
2017/04/14 HTML / CSS
CSS实现限制字数功能当对象内文本溢出时显示省略标记
2014/08/20 HTML / CSS
html5 Web SQL Database 之事务处理函数transaction与executeSQL解析
2013/11/07 HTML / CSS
Bluebella法国官网:英国性感内衣品牌
2019/05/03 全球购物
您附近的水疗和健康场所:Spafinder(美国)
2019/07/05 全球购物
浅谈react路由传参的几种方式
2021/03/23 Javascript
标准毕业生自荐信范文
2013/11/04 职场文书
汽车销售助理岗位职责
2015/04/14 职场文书
python3实现Dijkstra算法最短路径的实现
2021/05/12 Python
MySQL分区表实现按月份归类
2021/11/01 MySQL