位置: IT常识 - 正文

vue 实现内容超出两行显示展开更多功能,可依据需求自定义任意行数!(vue super)

编辑:rootadmin
vue 实现内容超出两行显示展开更多功能,可依据需求自定义任意行数!

推荐整理分享vue 实现内容超出两行显示展开更多功能,可依据需求自定义任意行数!(vue super),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue能做超过一分钟的么,vue nedb,vue超时设置,vue实用技巧,vue最大时长是多少,vue super,vue能做超过一分钟的么,vue super,内容如对您有帮助,希望把文章链接给更多的朋友!

平时开发中我们经常会遇到这样的需求,在一个不限高度的盒子中会有很多内容,如果全部显示用户体验会非常不好,所以可以先折叠起来,当内容达到一定高度时,显示展开更多按钮,点击即可显示全部内容,先来看看效果图:

 这样做用户体验瞬间得到提升,接下来看看具体细节。

<div class="like-box" v-if="likeList.length>0"> <span class="like-triangle"></span> 主要操作在内容这里 <ul class="like-person" ref="content" :style="{ 'max-height': status ? textHeight : auto }" :class="{ statusText: status }"> <li class="person" v-for="(item,index) in likeList" :key="index" @click="personCenter"> <i class="iconfont icon-dianzan"></i> <span>{{item.username}}</span> <span>,</span> </li> </ul> <div @click="moreClick" v-if="isShowMore"> <div class="shenglue">……</div> <div class="more">展开更多</div> </div></div>vue 实现内容超出两行显示展开更多功能,可依据需求自定义任意行数!(vue super)

样式大家可依据自己项目需求进行设计,这里就不贴了,主要说几个关键的。

1、在data中定义三个属性

isShowMore: false,  // 控制展开更多的显示与隐藏

textHeight: null,  // 框中内容的高度

status: false,  // 内容状态是否打开

2. 计算内容是否超出两行

获取内容高度时要使用this.$nextTick()保证获取到的高度时DOM渲染完成后的高度

mounted () { // 计算展开更多内容超出显示 this.$nextTick(() => { // 这里具体行数可依据需求自定义 let lineHeight = 27 * 2 this.textHeight = `${lineHeight}px` if (this.$refs.content.offsetHeight > lineHeight) { this.isShowMore = true this.status = true } else { this.isShowMore = false this.status = false } })}3.给内容框绑定动态style和动态class

用status来判断,若为true,添加动态style,设置最大高度为2行内容的高度,相反高度auto,另外添加动态class,让内容为overflow: hidden,主要就是这两个样式在控制。最后给展开更多添加点击事件,隐藏自己。

.statusText { overflow: hidden; }

好啦,具体就是这样啦,挺简单的,好像我废话比较多,欢迎各位大佬随时指正! 

本文链接地址:https://www.jiuchutong.com/zhishi/287955.html 转载请保留说明!

上一篇:夜间潜水时发现的章鱼,夏威夷科纳附近 (© Jeff Milisen/Alamy)(夜间潜水时发现水体)

下一篇:数字马力前端笔试编程(数字马力前端笔试题rgb)

  • 小规模免征增值税额度2023
  • 工程设备公司经营范围
  • 验收入库材料结转怎么写
  • 股东投资的钱放在哪里
  • 购买水果属于什么费用
  • 个人名字的话费能做账吗
  • 发票预付款充值卡是否报销
  • 附加税费计税依据
  • 预算外资金收入政府会计
  • 机器不生产计提折旧吗
  • 货物已到发票未到怎么做账
  • 递延所得税如何申报
  • 公司领导培训费怎么入账
  • 对方跨行转账成功后我却没收到款还能追回来吗
  • 环境保护税税率
  • 境外单位向境内单位提供咨询
  • 企业劳务发票怎么开,税率是多少
  • 自然人销售固定资产
  • 金税三期理解
  • 印花税减半优惠政策2019
  • 递延收益现金流量附表项目
  • 培训学校的收入
  • 公司体检如何入账
  • 关于房屋租赁备案的通知
  • 无偿赠送的原材料怎么处理
  • 无形资产入账摊销
  • 若依前后端分离需要准备啥
  • 营改增餐饮行业纳税规则
  • os x yosemite wifi断线怎么办?yosemite wifi掉线解决详细步骤
  • 增值税发票半年后能冲红
  • ihs.exe是什么
  • 苹果macOSBigSur是什么型号
  • php实现验证码功能
  • 政府会计主体资产有哪些
  • 集团与子公司资产的关系
  • thinkphp import
  • 进销存如何结转成本
  • PHP实现中国公民身份证号码有效性验证示例代码
  • vue中使用require报错
  • 微信支付php开发流程
  • 小程序生命周期钩子
  • 代垫运费增值税计入销项税额吗
  • 微信收款会计入个人所得税吗
  • 如何查询去年企业所得税
  • 材料采购账户的借方登记什么
  • 烟草的发票可以报销吗
  • sql server 2008的安全机制
  • 建筑公司劳务分包开票内容怎么写
  • 企业研发费用加计扣除比例
  • 利润表的税金及附加怎么得出来
  • 个人补缴的医保有钱返吗
  • 高新技术企业如何计算企业所得税
  • 城镇土地使用税减免税政策
  • 固定资产抵账的账务处理
  • 分支机构属于小型微利企业吗?
  • 个体户能开建筑劳务发票吗
  • 企业开发有多个产品
  • 提高sql执行效率的方法
  • elf.exe是什么程序
  • WNxp下让所有用户桌面显示系统默认图标的方法
  • 苹果机的mac地址
  • 错误代码0x8007007B
  • windows7的开机启动项在哪里
  • Linux基本命令使用
  • cocos编程
  • JavaScript中的NaN代表什么
  • bs cs架构
  • jquery获取滚动条位置
  • pygame 安装
  • 传智播客javappt
  • javascript声明变量的语句
  • 噩梦pv
  • JavaScript的函数中只能写一条代码语句
  • jquery单选框
  • 电子税务局领取纸质发票的步骤
  • 株洲购房契税减半流程查询
  • 四川国税发票查验真伪
  • 公司投资款可否取回
  • 结售汇选择汇还是钞好
  • 原始股卖出多少需要披露
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设