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


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实现自己的DOM选择器原理及代码
Mar 04 Javascript
JavaScript实现在数组中查找不同顺序排列的字符串
Sep 26 Javascript
解析浏览器端的AJAX缓存机制
Jun 21 Javascript
js实现文字无缝向上滚动
Feb 16 Javascript
浅谈Vue.js
Mar 02 Javascript
jquery表单提交带错误信息提示效果
Mar 09 Javascript
json的结构与遍历方法实例分析
Apr 25 Javascript
JS解决position:sticky的兼容性问题的方法
Oct 17 Javascript
用ES6的class模仿Vue写一个双向绑定的示例代码
Apr 20 Javascript
node删除、复制文件或文件夹示例代码
Aug 13 Javascript
JS回调函数 callback的理解与使用案例分析
Sep 09 Javascript
JS如何实现基于websocket的多端桥接平台
May 14 Javascript
详解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入门学习的几个不错的实例代码
2008/07/13 PHP
php str_pad 函数使用详解
2009/01/13 PHP
解析php获取字符串的编码格式的方法(函数)
2013/06/21 PHP
详解PHP实现执行定时任务
2015/12/21 PHP
深入浅析安装PhpStorm并激活的步骤详解
2020/09/17 PHP
一种JavaScript的设计模式
2006/11/22 Javascript
JS获取几种URL地址的方法小结
2014/02/26 Javascript
js对象内部访问this修饰的成员函数示例
2014/04/27 Javascript
javascript的数组和常用函数详解
2014/05/09 Javascript
javascript去除字符串中所有标点符号和提取纯文本的正则
2014/06/07 Javascript
JavaScript导出Excel实例详解
2014/11/25 Javascript
24款热门实用的jQuery插件推荐
2014/12/24 Javascript
原生js实现百叶窗效果及原理介绍
2016/04/12 Javascript
简单的分页代码js实现
2016/05/17 Javascript
Bootstrap组件系列之福利篇几款好用的组件(推荐二)
2016/07/12 Javascript
Bootstrap 手风琴菜单的实现代码
2017/01/20 Javascript
ES6新特性之Symbol类型用法分析
2017/03/31 Javascript
jquery网页加载进度条的实现
2017/06/01 jQuery
js实现前端图片上传即时预览功能
2017/08/02 Javascript
layer弹出层倒计时关闭的实现方法
2019/09/27 Javascript
使用vue实现一个电子签名组件的示例代码
2020/01/06 Javascript
JavaScript实现瀑布流布局的3种方式
2020/12/27 Javascript
Python实现计算文件夹下.h和.cpp文件的总行数
2015/04/23 Python
Python用于学习重要算法的模块pygorithm实例浅析
2018/08/16 Python
运用PyTorch动手搭建一个共享单车预测器
2019/08/06 Python
django使用JWT保存用户登录信息
2020/04/22 Python
瑞典首都斯德哥尔摩的多元奢侈时尚品牌:Acne Studios
2017/07/09 全球购物
旅游管理专业学生求职信
2013/09/28 职场文书
护理专业的自荐信
2013/10/22 职场文书
实习生个人的自我评价
2013/12/08 职场文书
《雨霖铃》教学反思
2014/02/22 职场文书
高三毕业典礼主持词
2014/03/27 职场文书
租房协议书样本
2014/08/20 职场文书
2014民事授权委托书范本
2014/09/29 职场文书
django学习之ajax post传参的2种格式实例
2021/05/14 Python
面试官问我Mysql的存储引擎了解多少
2022/08/05 MySQL