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 相关文章推荐
JavaScript 对象链式操作测试代码
Apr 25 Javascript
通过Javascript将数据导出到外部Excel文档的函数代码
Jun 15 Javascript
node.js中的fs.readlink方法使用说明
Dec 17 Javascript
《JavaScript高级编程》学习笔记之object和array引用类型
Nov 01 Javascript
jQuery实现仿QQ头像闪烁效果的文字闪动提示代码
Nov 03 Javascript
js中flexible.js实现淘宝弹性布局方案
Jun 23 Javascript
第一次接触神奇的Bootstrap基础排版
Jul 26 Javascript
JavaScript 中对象的深拷贝
Dec 04 Javascript
angularjs之$timeout指令详解
Jun 13 Javascript
使用jQuery实现鼠标点击左右按钮滑动切换
Aug 04 jQuery
(模仿京东用户注册)用JQuery实现简单表单验证,初学者必看
Jan 08 jQuery
Vue+Element实现动态生成新表单并添加验证功能
May 23 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中用加号与用array_merge合并数组的区别深入分析
2013/06/03 PHP
使用PHP获取当前url路径的函数以及服务器变量
2013/06/29 PHP
Laravel5中防止XSS跨站攻击的方法
2016/10/10 PHP
PHP获取访问页面HTTP状态码的实现代码
2016/11/03 PHP
JavaScript 学习历程和心得分享
2010/12/12 Javascript
按给定几率进行随机抽取的js代码
2010/12/28 Javascript
jQuery事件 delegate()使用方法介绍
2012/10/30 Javascript
javascript预加载图片、css、js的方法示例介绍
2013/10/14 Javascript
当鼠标滑过文本框自动选中输入框内容的JS代码分享
2013/11/26 Javascript
原生js实现淘宝首页点击按钮缓慢回到顶部效果
2014/04/06 Javascript
Jquery图片延迟加载插件jquery.lazyload.js的使用方法
2014/05/21 Javascript
VUEJS实战之修复错误并且美化时间(2)
2016/06/13 Javascript
原生js封装二级城市下拉列表的实现代码
2016/06/16 Javascript
JSON字符串和JSON对象相互转化实例详解
2017/01/05 Javascript
bootstrap中添加额外的图标实例代码
2017/02/15 Javascript
JS使用插件cryptojs进行加密解密数据实例
2017/05/11 Javascript
JavaScript中Hoisting详解 (变量提升与函数声明提升)
2017/08/18 Javascript
vue权限路由实现的方法示例总结
2018/07/29 Javascript
angular实现input输入监听的示例
2018/08/31 Javascript
微信小程序日历弹窗选择器代码实例
2019/05/09 Javascript
微信小程序的mpvue框架快速上手指南
2019/05/15 Javascript
在Debian下配置Python+Django+Nginx+uWSGI+MySQL的教程
2015/04/25 Python
python函数形参用法实例分析
2015/08/04 Python
利用python3随机生成中文字符的实现方法
2017/11/24 Python
Linux下Python安装完成后使用pip命令的详细教程
2018/11/22 Python
Python实现的各种常见分布算法示例
2018/12/13 Python
python爬虫获取新浪新闻教学
2018/12/23 Python
win7下 python3.6 安装opencv 和 opencv-contrib-python解决 cv2.xfeatures2d.SIFT_create() 的问题
2019/10/24 Python
Python 脚本实现淘宝准点秒杀功能
2019/11/13 Python
高校毕业生自我鉴定
2013/10/27 职场文书
电信专业毕业生推荐信
2013/11/18 职场文书
社区活动总结报告
2014/05/05 职场文书
2014年度安全工作总结
2014/12/04 职场文书
法律意见书范本
2015/06/04 职场文书
十大动画制作软件,Adobe产品上榜两款,第一是行业标准软件
2022/03/18 杂记
Go并发4种方法简明讲解
2022/04/06 Golang