微信小程序-时间轴/抽屉展开收起特效

微信小程序---缓慢展开和收起效果(不需要wx:if控制实现) 通过height高度来控制展开或收起,当不需要展示时,高度为0,超过的部分用overflow: hidden;来隐藏,可以通过该方法来让需要展示的页面隐藏起来,然后显示的时候,将height条件去掉,在加上transition来控制动画即可。点击中间问题,在中间缓慢展开 ,将下面往下撑开,点击再次收起效果。点击添加商品,缓慢向下展开,点击收起,缓慢将下面收起效果。方法简单,只需要明白实现的原理即可实现自己喜欢的效果。原理实现是一样的,只需要将主要部分即可。 阅读详情

微信小程序项目中用到的时间轴展示和抽屉展开收起特效
本篇内容为原创,转载请注明出处。
一、效果图
默认为展开状态  ---  左:展开;右:收起


二、代码片段:

1、wxml部分

<view class="card">
  <view class="cardTitle" bindtap="changeUpDown">我是标题
    <!-- 项目里面用的是iconfont标签-箭头 -->
    <text class="iconfont icon-down {{showUp?'rotateUp':'rotateDown'}}"></text>
    <!-- 这里为了方便看,使用了< 小于号 -->
    <view class="textBox {{showUp?'rotateUp1':'rotateDown1'}}">
      <text>{{'<'}}</text>
    </view>
  </view>
  <view class="ivestment-c {{showUp?'hideBox':'showBox'}}">
    <view class="ivestment-i" wx:for="{{dataList}}" wx:key="index" wx:for-item="item" wx:for-index="index">
      <view class="invest-l">
        <view class="invest-b invest-line">
          <text decode="{{true}}" space="{{true}}">&nbsp;</text>
        </view>
        <view class="demo-flex-1 font-28r color-3" style="line-height: 64rpx;">{{item.startTime}}</view>
      </view>
      <view class="invest-l">
        <view class="invest-b invest-line2">
          <text decode="{{true}}" space="{{true}}">&nbsp;</text>
        </view>
        <view class="demo-flex-1">
          <view class="font-12 color-6 awardUnit" style="line-height: 52rpx;margin-top: 16rpx;margin-bottom: 16rpx;">{{item.experience}}
          </view>
        </view>
      </view>
    </view>
  </view>
 
</view>
<view class="card">
 我的存在就是为了测测上面收起的效果,嗯就是这样
</view>

2、js部分:
 

Page({
  data: {
    showUp:false,
    dataList:[
      {
        startTime:'2020年3月',
        experience:'苦逼的写代码'
      },
      {
        startTime:'2020年4月',
        experience:'依然苦逼的写代码'
      },
      {
        startTime:'2020年5月',
        experience:'仍然苦逼的写代码'
      },
      {
        startTime:'2020年6月',
        experience:'好吧,继续写代码'
      }
    ]
  },
  
  changeUpDown:function(e){
    this.setData({
      showUp:!this.data.showUp
    })
  }
})

3、wxss部分
 

.card {
  padding: 20rpx;
}
.cardTitle {
  padding: 10rpx;
}
.ivestment-c{
  position: relative;
  box-sizing:border-box;
  background-color: #fff;
  padding: 20rpx 0;
  width: 100%;
  max-height: 500px;
  overflow-y: auto;
  height: auto;
}
.ivestment-i{
  position: relative;  
}


.invest-l{
  width: 100%;  
  display: flex;
  flex-direction: row;
  align-items: center;
  text-align: left;  
  position: relative;
}

.demo-flex-1{
  flex:1;
  margin-left: 40rpx;
}
.invest-b{
  position: absolute;
  top:0;
  left: 0;
  width: 40rpx;
  height: 100%;
  text-align: center;
}
.invest-line::before{
  position: absolute;
  display: inline-block;
  top:50%;
  left: 50%;
  content: " ";
  margin-top: -9rpx;
  margin-left: -9rpx;
  width:18rpx;
  height:18rpx;
  background:#398af4;
  border-radius:50%;
  z-index: 10;
}
.invest-line::after{
  position: absolute;
  display: inline-block;
  top: 0;
  left: 50%;
  content: " ";
  margin-left: -1rpx;
  width: 2rpx;
  height: 100%;
  background-color: #398af4;
  z-index: 5;
}
.invest-line2::after{
  position: absolute;
  display: inline-block;
  top: 0;
  left: 50%;
  content: " ";  
  width: 2rpx;
  margin-left: -1rpx;
  height: 100%;
  background-color: #398af4;
  z-index: 5;
}
.ivestment-i:nth-child(1) .invest-line::after{
  top: 36rpx;
}
.showBox {
  transition: all .6s ease;
  height: auto;
  max-height: 500px;
  overflow-y: auto;
}
.hideBox {
  transition: all .6s ease;
  height: 0;
  padding: 0;
}
.textBox {
  width: 20px;
  height: 20px;
  float: right;
}
.rotateUp {
  transition: all .6s ease;
  transform:rotate(0deg);
}
.rotateDown {
  transition: all .6s ease;
  transform:rotate(180deg);
}
.rotateUp1 {
  transition: all .6s ease;
  transform:rotate(90deg);
}
.rotateDown1 {
  transition: all .6s ease;
  transform:rotate(270deg);
}



三、代码地址:
https://github.com/Jianing666/wx-timeaxis-drawer

【微信小程序】点击展开显示更多,点击收起部分隐藏以及修改Data对象中的某一元素 效果图如下: 刚开始的时候再VantUI库里找了大半天没找到,看来不能偷懒了,只能自己做了。 阅读详情

相关推荐

微信小程序 列表收起与展开效果

首先,先看下效果吧,就放两张图片看下吧 第一张图就是原页面了,然后点击 “收起” ,效果就是第二张图的样式了。再点击 “展开” 的时候就会变成第一张图的样子了。 <view class="list" wx:for="{{mylist.list}}" wx:for-item="test" wx:key="Addtime"> <view class="list-date list-one"> <view class="line-one"&

勉后之幸 5143

微信小程序实现展开/收起的效果

(1)首先我们定义一下html结构: <view class="container"> <view class="title"> <text class="title_txt">标题标题</text> <image class="title_icon" src="/assets/images/arrow_up.png" /&...

青衫折扇的博客 1万+

微信小程序实现时间轴效果

时间轴作为一种流行的信息展示方式,广泛应用于展示个人历程、公司发展历史、事件进程等多种场景中,其直观、条理清晰的特点使得信息传达更为高效。

商务合作 / 项目定制 / 学习交流。个人vx:lovely_wml 3万+

微信小程序view的折叠与展开

首先我们先创建一个view,它需要包裹两个子view:一个为我们触发事件并可视的view ,另一个为隐藏的view。当我们点击可视的view,则会在下面弹出隐藏的view。如果想要添加多个隐藏的view,只需要更改可视view中的data-index的值,还有隐藏view的showIndex的值。,当用户点击该组件的时候会在该页面对应的 Page 中找到相应的事件处理函数。在做隐藏view之前,我们可以先来了解一下微信小程序视图层的事件。我们可以在控制台看到showIndex的值的变化。

m0_62592623的博客 2789

使用小程序实现侧屏抽屉、页中页效果

抽屉菜单是现在移动端网页、App都很常见的设计,这里将用小程序来实现这一效果。小程序提供了一系列触摸触发的事件,我们可以在这些事件上绑定自定义的响应,即可达到打开关闭菜单的操作效果。

商务合作 / 项目定制 / 学习交流。个人vx:lovely_wml 5344

微信小程序 多行文本显示…+显示更多按钮和收起更多按钮功能

看了很多帖子,但是效果都不是很好。还是找微信小程序官方文档,自己写比较方便。自己动手丰衣足食!话不多说,上代码! 时空传送 先来个效果图 html <block wx:for='{{trendsList}}' wx:key='index'> <view class=box> <view class=textFour_box>{{item.text}}</view> <view class=text_toggle_box wx:if='{{item.seeMore}}' data-index='{{index

微信小程序简单实现时间轴界面

使用微信小程序简单实现时间轴界面,代码简洁,逻辑清楚,适合刚入手准备学习微信小程序的伙伴们,简单分享下。一共分为以下四大步骤。

蒜鸟编程的博客 4098

西电微机系统课程设计——步进电机开环控制系统设计

西电微机系统课程设计——步进电机开环控制系统设计 一、课程设计目的 1.掌握微机系统总线与各芯片管脚连接方法,提高接口扩展硬件电路的连接能力。 2.加深对 A/D 和并行接口芯片的工作方式和编程方法的理解。 3.搞懂步进电机的工作原理及控制方式,掌握开环控制系统的设计思路和实现方法。 二、课程设计的内容 手动调节电位器旋钮(0V~5V),通过 ADC0809 模拟输入水库水位 0 米~50 米,CPU收到水位信号后,根据水位高度控制步进电机(水闸)进行调节。 三、系统功能与设计要求 基本功能要求 手

OutlierLi's Blog 7525

微信小程序之内容的动画展开与收回

先上效果图: 1.展开状态 2.显示状态 3.收回状态 先说一下实现原理: 1.给列表一个动画效果。 2.使用animotion来创建动画。 3.使列表的高度从0到n开始变化,使用setTimeout做延时处理。 4.收回则与上面相反。 5.animotion的用法请查看官方文档 传送门:https://developers.weixin.qq.com/miniprogram/dev/api...

zyh2525246的博客 9650

Deepseek+Word插件:一键搞定论文翻译与润色的学术写作新革命

本文介绍了Deepseek Word插件如何革新学术写作流程,实现论文翻译与润色的一键操作。该插件深度集成于Word环境,能智能完成中英互译、语法修正、术语统一及逻辑优化,显著提升写作效率与文本质量,是研究者的高效AI助手。

weixin_29252171的博客 513

车载智能终端的设计

本文研究的主要内容是车载智能终端的设计,在学习和借鉴国内外在车载电子领域已有的成熟经验的基础上,利用32位嵌入式处理器S344B0X01和μC/OS-Ⅱ实时操作系统技术,针对汽车行驶记录仪、GPS/GPRS的已有设计的不足提出了新的解决方案,并对方案的可行性进行了分析和论证。

weixin_44553616的博客 1415

微信小程序怎么实现内容的展开和收起

看到一个需求,对一些前端小白或者刚开始写小程序的人来说,可能会有点帮助,效果如下: 就是以上效果,废话不多说,上代码wxml: &lt;view class='list_box' wx:for='{{list}}' wx:key='this' wx:for-item='parentItem' wx:for-index='parentIndex' &gt;&lt;view class='list...

u012746918的博客 1万+

如何将一个向量投影到一个平面上_线性代数19——投影矩阵和最小二乘

一维空间的投影矩阵  先来看一维空间内向量的投影:  向量p是b在a上的投影,也称为b在a上的分量,可以用b乘以a方向的单位向量来计算,现在,我们打算尝试用更“贴近”线性代数的方式表达。  因为p趴在a上,所以p实际上是a的一个子空间,可以将它看作a放缩x倍,因此向量p可以用p = xa来表示,只要找出x就可以了。因为a⊥e,所以二者的点积为0:  我们希望化简这个式子从而得出x:  x是一个实数...

weixin_39741101的博客 5230

微信小程序:文本的展开与收起

<view class='special'> <view class="view_jianjie {{ellipsis?'ellipsis':'unellipsis'}}"> 这里是文字内容 这里是文字内容 这里是文字内容 这里是文字内容 这里是文字内容 这里是文字内容 这里是文字内容 这里是文字内容 这里是文字内容 这里是文字内...

林中明月间丶 4083

华北理工大学以升实验班蓝桥杯选拔赛题解

文章目录华北理工大学以升实验班蓝桥杯选拔赛题解A:期末考试题目描述题目讲解代码B:月份题目描述题目讲解代码C:打饭题目描述题目讲解代码D : 正弦波信号题目描述题目讲解代码E : 亲爱的长方形题目描述题目讲解代码F:挖金子题目描述题目讲解代码G : 金金的游戏题目描述题目讲解代码H : 区间和题目描述题目讲解代码详细视频讲解请关注华北理工大学b站账号。 华北理工大学以升实验班蓝桥杯选拔赛题解 A:期末考试 题目描述 Description 期末考试过去许多天了,如今成绩都出来了,那么现在让我们对成绩我分个类

Qq1739206233的博客 1128

ardupilot 方向余弦矩阵/旋转矩阵的理解

本节主要记录自己对ardupilot中用到的方向余弦矩阵/旋转矩阵的理解,欢迎批评指正,有些资料参考网上写的比较好的资料,免得查找资料麻烦。旋转矩阵的坐标理解:表示从旋转矩阵的下标的坐标系的坐标变换到上标表示的坐标系坐标下。旋转矩阵的坐标系理解:表示从旋转矩阵的上标的坐标系变换到下标表示的坐标系下。从旋转矩阵的投影更好理解,比如下面旋转矩阵的第一行是左边坐标系的第一维分量在右边坐标系的投影。

陌城烟雨 612

微信小程序实现筛选数据的收起与展开

1.实现效果 2.实现原理 当数据的长度大于某个值时(此处为4),给定一个参数来判断真假,当为真时,利用nth-child 选择器,将大于等于第四个的数据进行隐藏,为假时候去掉改选择器属性。 .d_item_none:nth-child(n+4){ display: none; } 3.完整代码(更多代码请移至码云) https://gitee.com/susuhhhhhh/wxmini_demo 喜欢的就star+关注一下~ ...

苏苏就是小苏苏的博客 2197

ContextCapture系列教程(三):大疆精灵4RTK版无人机POS数据提取、处理(处理后勉强达到免相控要求)

大疆精灵 Phantom 4 RTK于2018年发布,是大疆为高精度建图与精准飞行设计的行业级无人机,在精灵4无人机外形的基础上,机身增加了RTK模块,可以实现高精度 RTK 定位导航,相机与 RTK 系统采用微秒级时间同步,可以通过app 进行航线规划飞行

pausau的博客 1万+

小程序进阶-长(多行)文本内容展开与收起、单行文本溢出隐藏

多行文本和单行文本内容溢出隐藏,多行文本展开与收起。

weixin_43166227的博客 4857

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

微信小程序实现一个文字展开收起功能

其实还有一个问题,就是,当确定要显示省略号时,右边切换的dom是需要定位到当前行的末尾,同时,当前行业需要一个padding,而这个padding就是切换按钮的宽度,所以这里也有一点点逻辑。笔者认为,实现该功能的难点是如何判断当前行是否应该省略,这里采取一个高度差的办法,基本就没有兼容性问题,不过实际中发下,文字会有。剩下的,大概就是高度差的判断,决定是否有省略号,以及动态添加、移除css类名,这个过程不算复杂。需求很常见,就是当一行文字过多时,显示省略号,然后显示。两个字,点击,文字完全展示开,点击。

qq_45219069的博客 5151

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

微信小程序--标签展开收起动画

微信小程序标签展开收起动画,使用css3的transition当高度变化时触发过渡效果,此方法需要固定高度,如果高度不固定,需要手动获取高度。 <view class="children flex flex-warp" style="height: {{item.childrenHeight}}px;" > children中初始化高度为0,通过点击事件修改height的高度,触发transtion过渡效果。 .children { height: 0; padding: 0;

chen_x_w的博客 3010

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

微信小程序文本展开/收起功能

目录思路代码效果 思路 利用图片加载(头像)事件,计算评论高度,line-height指定为x,y行就是xy px, 如果评论高度大于xy,则显示展开按钮 展开按钮:点击去除限制只显示y行的css显示,内容就全部显示了。 代码 <image binderror="listenCommentUserAvatarLoadError" bindload="listenCommentU...

第二世界 3548

微信小程序设置超出行显示 ... 与展开更多按钮

微信小程序设置超出行显示 ... 与展开更多按钮 问题描述 业务开发中会有一些场景,超出一行显示 … 与展开更多按钮,展开更多按钮可以切换显示一行还是全部内容,少于一行正常显示; 解决方案 分析下问题: 一般这种需求不好实现的原因是,在移动端,每行显示的字数的有可能在不同机型会有差异,所以就使开发者无法知道这些内容是否超过一行,是否该显示展开更多按钮。 绕开上述原因,曲线救国,我们在每次页面渲染完...

FE-阿阳的博客 1万+

微信小程序实现评论多级展开收起以及点赞功能

我们先来看看效果 所有效果均已实现,可以自己写写体验一下 接下来看看看代码 wxml <!--pages/commodity/commodity-write-back/index.wxml--> <view class="possess-layout margin-layout"> <view class="main"> <view class="commodity"> <view class="commdo

青衫折扇的博客 5727

微信小程序原生文字展开收起

然后在需要调用的组件里面调用就行了,我这边是做了一个朋友圈的功能,所以需要for循环一下,如图所示,在小程序上会出现文字过于太多,显示不全的问题,所以做了一个。然后把css样式复制以下。

weixin_45289656的博客 997
上一篇: vue开发中遇到的问题与解决方案(四)
下一篇: 微信小程序-自定义子组件-按钮组
驚鴻入梦
博客等级 码龄10年 23粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值