vue实现文章内容过长点击阅读全文功能的实例


Posted in Javascript onDecember 28, 2017

直接上代码:

html:

<div class="bodyFont clearfloat" id="bodyFont" ref="bodyFont" :class="{bodyHeight:contentStatus}">
  <div v-html="content"></div>
</div>
<div class="contentToggle" v-if="contentStatus" @click="contentStatus=!contentStatus">阅读全文</div>

css:

.bodyFont{
 .font-dpr(16px);
 color: #333;
 text-align: left;
 line-height:58px;
 word-break:break-all;
 word-wrap:break-word;
 padding-bottom: 30px;
 height:auto;
 overflow: hidden;
 max-height: 100%;
 p{margin:16px 0 0 0;}
 }
 .bodyHeight{
 height:5000px;
 }
 .contentToggle{
 height:60px;
 line-height:60px;
 text-align: center;
 color:@red;
 border:1px solid @red;
 border-radius: 5px;
 .font-dpr(14px);
 margin-bottom:30px;
 }

js:

data(){
 return { 
  contentStatus:false, 
  curHeight:0,
  bodyHeight:5000
 }
},
mounted(){
 setTimeout(()=>{
  this.contentToggle();
 },500)
 },
methods:{
 contentToggle(){
 this.curHeight=this.$refs.bodyFont.offsetHeight;
 if(this.curHeight>this.bodyHeight){
  this.contentStatus=true;
 }else{
  this.contentStatus=false;
 }
 },
}

效果如图:

vue实现文章内容过长点击阅读全文功能的实例

实现思路与注意的点:

1、获取内容的高度要等到dom加载完成之后,在mounted里加一个setTimeout函数,保证能真正获取到

2、当内容的高度高于自己设定的要展示的高度的时候,则只限定在自己要展示的高度中,加一个class解决,注意要overflow:hidden;

以上这篇vue实现文章内容过长点击阅读全文功能的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS的反射问题
Apr 07 Javascript
JavaScript高级程序设计阅读笔记(十六) javascript检测浏览器和操作系统-detect.js
Aug 14 Javascript
在Iframe中获取父窗口中表单的值(示例代码)
Nov 22 Javascript
JS保留两位小数,多位小数的示例代码
Jan 07 Javascript
JavaScript前补零操作实例
Mar 11 Javascript
dedecms页面如何获取会员状态的实例代码
Mar 15 Javascript
Bootstrap CSS组件之导航条(navbar)
Dec 17 Javascript
Vue.js实现模拟微信朋友圈开发demo
Apr 20 Javascript
JS获取短信验证码倒计时的实现代码
May 22 Javascript
使用konva和vue-konva库实现拖拽滑块验证功能
Apr 27 Javascript
Vue中使用JsonView来展示Json树的实例代码
Nov 16 Javascript
ES6字符串的扩展实例
Dec 21 Javascript
webpack搭建vue 项目的步骤
Dec 27 #Javascript
JS实现留言板功能[楼层效果展示]
Dec 27 #Javascript
js判断节假日实例代码
Dec 27 #Javascript
Vue的实例、生命周期与Vue脚手架(vue-cli)实例详解
Dec 27 #Javascript
Angular实现的简单查询天气预报功能示例
Dec 27 #Javascript
Angular实现点击按钮后在上方显示输入内容的方法
Dec 27 #Javascript
Angular实现的日程表功能【可添加及隐藏显示内容】
Dec 27 #Javascript
You might like
PHP文本操作类
2006/11/25 PHP
浅谈PHP 闭包特性在实际应用中的问题
2009/10/30 PHP
为你总结一些php信息函数
2015/10/21 PHP
jQuery select的操作实现代码
2009/05/06 Javascript
JQuery this 和 $(this) 的区别
2009/08/23 Javascript
JavaScript QueryString解析类代码
2010/01/17 Javascript
基于JQUERY的多级联动代码
2012/01/24 Javascript
jquery退出each循环的写法
2014/02/26 Javascript
js 与 php 通过json数据进行通讯示例
2014/03/26 Javascript
javascript中的正则表达式使用指南
2015/03/01 Javascript
JS实现可缩放、拖动、关闭和最小化的浮动窗口完整实例
2015/03/04 Javascript
JS拖拽插件实现步骤
2015/08/03 Javascript
Express下采用bcryptjs进行密码加密的方法
2018/02/07 Javascript
今天,小程序正式支持 SVG
2019/04/20 Javascript
vue模仿网易云音乐的单页面应用
2019/04/24 Javascript
Vue中keep-alive组件作用详解
2020/02/04 Javascript
谈谈Python进行验证码识别的一些想法
2016/01/25 Python
解决PyCharm的Python.exe已经停止工作的问题
2018/11/29 Python
python rolling regression. 使用 Python 实现滚动回归操作
2020/06/08 Python
python装饰器三种装饰模式的简单分析
2020/09/04 Python
python中time.ctime()实例用法
2021/02/03 Python
css3进行截取替代js的substring
2013/09/02 HTML / CSS
分享CSS3制作卡片式图片的方法
2016/07/08 HTML / CSS
Lands’ End英国官方网站:高质量男女服装
2017/10/07 全球购物
Halston Heritage官网:简洁的日装,稍显奢华的晚装
2018/11/20 全球购物
四年大学生活的个人自我评价
2013/12/11 职场文书
公司人力资源的自我评价
2014/01/02 职场文书
青年文明号复核材料
2014/02/11 职场文书
中学生国旗下讲话稿
2014/04/26 职场文书
业务内勤岗位职责
2014/04/30 职场文书
工作收入证明模板
2014/10/10 职场文书
合同权益转让协议书模板
2014/11/18 职场文书
检讨书模板大全
2015/05/07 职场文书
驳回起诉裁定书
2015/05/19 职场文书
关于党风廉政建设宣传教育月的活动总结!
2019/08/08 职场文书
如何用RabbitMQ和Swoole实现一个异步任务系统
2021/05/29 PHP