微信小程序实现折叠与展开文章功能


Posted in Javascript onJune 12, 2018

需求

页面折叠超出的的部分显示省略号,点击展开后显示全部内容

微信小程序实现折叠与展开文章功能

需要解决的问题

  • 箭头随展开折叠后箭头方向的变化
  • 当点击箭头文本显示内容的变化

如何解决?

  • 箭头方向的变化是一个点击事件bindtap,点击后更换小图标;
  • 文本变化是一个show或者hide的事情,折叠的时候有个多行文本溢出得问题五个属性(display: -webkit-box,-webkit-box-orient: vertical, -webkit-line-clamp,text-overflow,overflow)
  • 状态与数据绑定控制样式

具体实现

wxml

<view class="company-detail">
    <view class="company-detail-content">
      <view class="weui-loadmore weui-loadmore_line">
        <view class="weui-loadmore__tips weui-loadmore__tips_in-line">公司介绍</view>
      </view>
      <view class="long-dec {{isFold?'hide':'show'}}">
        <text class="first-dec">
          创业是个失败概率很大的事情,我们很高兴从2012底到现在还活着, 而且还活的很不错。 目前有赞旗下的产品有:有赞微商城、有赞收银、有赞零售、有赞美业、有赞批发、有赞买家版、有赞微小店.
        </text>
        <text class="second-dec">
          我们认为,相比较业务来说,团队才是公司的核心。有赞没有“员工”只有“小伙伴”,也没有人姓“公”名“司”,我们有一群聪明、有要性、又皮实的伙伴,这才是我们最大的资产。
        </text>
        <text class="last-dec">
          有赞的小伙伴目前已超过1000人,工程师比例占55%,我们有很浓的工程师氛围,每周都有很多的有意思的分享:有出国旅游的分享、有如何搭讪的分享、有如何装修房子的分享...技术分享更是数不胜数。 我们的工作不是很轻松,但我们的氛围很轻松,很open,公司里随处可见骑着独轮车来回跑的工程师、懒人沙发、午睡吊篮、复古电话亭等等,每个月都有节日、新人表演、拓展、派对等,对我们来说,天天都可以是节日。我们倡导简单直接的沟通方式,希望做一家通透的公司。这里并没有过多的等级划分,你可以随时提出自己的意见和任何人PK。福利方面我们全额缴纳五险一金,每月980元的有赞E卡鼓励大家一起吃喝玩乐。工程师标配MacBookPro、大屏显示器和机械键盘。办公室里常备零食、水果,休息区有电视、游戏机、桌球、乒乓球、四驱赛车、桌游随时供大家放松减压。每天晚下班的打车费报销,每年给你和你的家人提供旅游和体检等等。
        </text>
      </view>
      <image class="arrow" src=" {{isFold?'../../youzan-image/down.png':'../../youzan-image/up.png'}}" bindtap="showAll"></image>
    </view>
  </view>

wxss

.long-dec{
  padding-left: 20rpx;
  margin-top: -87rpx;
  display: -webkit-box;/*关键属性*/
  font-size:28rpx;
  color:#cfcfd0;
  line-height: 40rpx;
  word-break: break-all;
  -webkit-box-orient: vertical;/* 关键属性 */
  -webkit-line-clamp:6;/* 关键属性 */
  overflow: hidden;/* 关键属性 */
  text-overflow:ellipsis;/* 超出内容显示省略号*/
}
.hide{
 display: -webkit-box;
}
.show{
 display: block;
}
.arrow{
 position: absolute;
 width: 40rpx;
 height: 43rpx;
 left: 50%;
 transform: translate(-50%);
}

js

Page({
 data: {
  isFold: true,
 },
showAll: function (e) {
  this.setData({
   isFold: !this.data.isFold,
  })
 }

总结

以上所述是小编给大家介绍的微信小程序折叠与展开文章的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
自适应高度框架 ----属个人收藏内容
Jan 22 Javascript
Prototype Hash对象 学习
Jul 19 Javascript
Jquery在指定DIV加载HTML示例代码
Feb 17 Javascript
jQuery基础知识小结
Dec 22 Javascript
JS实现单行文字不间断向上滚动的方法
Jan 29 Javascript
JS实现仿FLASH效果的竖排导航代码
Sep 15 Javascript
详解jQuery中的empty、remove和detach
Apr 11 Javascript
基于Phantomjs生成PDF的实现方法
Nov 07 Javascript
jQuery EasyUI Draggable拖动组件
Mar 01 Javascript
Node.js实现一个HTTP服务器的方法示例
May 13 Javascript
layui的数据表格+springmvc实现搜索功能的例子
Sep 28 Javascript
Js视频播放器插件Video.js使用方法详解
Feb 04 Javascript
微信小程序收藏功能的实现代码
Jun 12 #Javascript
记一次webpack3升级webpack4的踩坑经历
Jun 12 #Javascript
webpack4之SplitChunksPlugin使用指南
Jun 12 #Javascript
详解webpack4升级指南以及从webpack3.x迁移
Jun 12 #Javascript
webpack分离css单独打包的方法
Jun 12 #Javascript
详解extract-text-webpack-plugin 的使用及安装
Jun 12 #Javascript
webpack 样式加载的实现原理
Jun 12 #Javascript
You might like
DC最新动画电影:《战争之子》为何内容偏激,毁了一个不错的漫画
2020/04/09 欧美动漫
mysql+php分页类(已测)
2008/03/31 PHP
php注销代码(session注销)
2012/05/31 PHP
thinkphp实现多语言功能(语言包)
2014/03/04 PHP
Linux下手动编译安装PHP扩展的例子分享
2014/07/15 PHP
PHP也能干大事 随机函数
2015/04/14 PHP
大家须知简单的php性能优化注意点
2016/01/04 PHP
thinkPHP+PHPExcel实现读取文件日期的方法(含时分秒)
2016/07/07 PHP
Yii2框架dropDownList下拉菜单用法实例分析
2016/07/18 PHP
功能强大的php分页函数
2016/07/20 PHP
php 读取输出其他文件的实现方法
2016/07/26 PHP
PHP实现中国公民身份证号码有效性验证示例代码
2017/05/03 PHP
js判断iframe内的网页是否滚动到底部触发事件
2014/03/18 Javascript
node.js中的fs.renameSync方法使用说明
2014/12/16 Javascript
js判断当前页面用什么浏览器打开的方法
2016/01/06 Javascript
基于Vuejs实现购物车功能
2016/08/02 Javascript
Vue 去除路径中的#号
2018/04/19 Javascript
jQuery ajax仿Google自动提示SearchSuggess功能示例
2019/03/28 jQuery
详解vue配置后台接口方式
2019/03/29 Javascript
[01:32]DOTA2次级联赛——首支职业女子战队选拔赛全记录
2014/10/23 DOTA
[54:29]2018DOTA2亚洲邀请赛 4.7 淘汰赛 VP vs LGD 第二场
2018/04/09 DOTA
python计算时间差的方法
2015/05/20 Python
Python 包含汉字的文件读写之每行末尾加上特定字符
2016/12/12 Python
python Selenium爬取内容并存储至MySQL数据库的实现代码
2017/03/16 Python
Django代码性能优化与Pycharm Profile使用详解
2018/08/26 Python
python实现socket+threading处理多连接的方法
2019/07/23 Python
python文件处理fileinput使用方法详解
2020/01/02 Python
荷兰牛仔裤网上商店:Jeans Centre
2018/04/03 全球购物
Ooni英国官网:披萨烤箱
2020/05/31 全球购物
怎么可以提高数据库查询数据的速度
2014/06/28 面试题
车间班长岗位职责
2013/11/30 职场文书
就业协议书的作用
2014/04/11 职场文书
煤矿安全生产月活动总结
2014/07/05 职场文书
侵犯商业秘密的律师函
2015/05/27 职场文书
2016简历自荐信优秀范文
2016/01/29 职场文书
Java设计模式之代理模式
2022/04/22 Java/Android