位置: 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)

  • 应交税费借方余额0.01怎么调整
  • 外国驻华使领馆自用车辆
  • 小规模纳税人劳务派遣差额征税税率
  • 固定资产入账怎么做账
  • 小规模未达起征点
  • 本月发生费用下月收到发票
  • 公允价值下降属于资产吗
  • 注销公司账面余额要全部清零吗
  • 营业外收支计入哪里
  • 存放中央银行款项名词解释
  • 法人购买设备怎么入账
  • 总公司业务分公司开票是虚开吗
  • 投资理财产品的风险性从低到高
  • 进项税额一直大于销项税额
  • 专用发票与普通发票代码区别
  • 计算本月生产成本怎么算
  • 软件行业服务费印花税
  • 事业单位固定资产管理办法
  • 专用发票不报销对公司有影响吗
  • 跨期发票如何进行会计处理?
  • 结转成本的会计分录摘要怎么写
  • ghost读不出硬盘
  • 跨境电商小规模与一般纳税人
  • 提供给生产工人的住房的租赁费用应计入
  • 预付账款退款怎么做会计分录
  • windows为什么从7开始
  • 技术服务辅助设施包括
  • php的用处
  • 栀子花叶子发黄是什么原因
  • 华硕路由器登录地址
  • 房产税应计入哪个会计科目
  • 发票开烟酒
  • codeigniter 教程
  • 去噪扩散概率模型
  • 前端请求方式
  • php怎么写数据库
  • docker部署架构图
  • js 数组去重的四种方法
  • nerf新手入门
  • jquery+thinkphp实现跨域抓取数据的方法
  • javascript 模块
  • linux mysql忘记密码的多种解决或Access denied for user 'root'@'localhost'
  • mysql错误代码大全
  • 织梦设置的关键词看不到
  • 发票使用范围指什么
  • 应付账款重分类是什么意思
  • 残保金如何做账务处理
  • 主营业务收入核算项目组合表
  • 专项资金补助经费如何入账
  • 先开收据再打款
  • 成本含税如何做会计分录
  • 普通发票怎么开?
  • sql排序分组语句
  • wrme.exe是什么
  • Win7中Remote Procedure Call(RPC)服务能关闭吗
  • win7系统更改ip地址
  • Linux系统中Squid代理服务器配置全过程解析
  • linux的free
  • window系统怎么取消开机密码
  • 怎么删除电脑windows
  • dgservice.exe是什么
  • hptlbxfx.exe
  • linux进程详解
  • win8找不到恢复环境怎么恢复出厂设置
  • linux查看开机运行时间
  • unix2dos linux实现
  • win8新建用户
  • unity小技巧
  • extJS中常用的4种Ajax异步提交方式
  • cocos2dx开发的游戏有哪些
  • 编写批处理运行程序
  • javascript sort方法排序
  • Python爬取微信视频号
  • 安卓layout布局
  • javascript总结笔记
  • python中getattr函数例子
  • 消费税是含税价
  • 房产税怎么计提和缴纳分录
  • 陕西省网上税务局怎么报国税(陕西税务局官网申报)
  • 漳州市税务局电话多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设