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 相关文章推荐
jquery ui对话框实例代码
May 10 Javascript
js调试系列 源码定位与调试[基础篇]
Jun 18 Javascript
Javascript中的getUTCHours()方法使用详解
Jun 10 Javascript
使用js获取地址栏参数的方法推荐(超级简单)
Jun 14 Javascript
Javascript blur与click冲突解决办法
Jan 09 Javascript
微信小程序 引用其他js文件实现代码
Feb 22 Javascript
关于vue-resource报错450的解决方案
Jul 24 Javascript
vue实现页面加载动画效果
Sep 19 Javascript
vue v-for循环重复数据无法添加问题解决方法【加track-by='索引'】
Mar 15 Javascript
微信小程序 wepy框架与iview-weapp的用法详解
Apr 10 Javascript
js实现移动端tab切换时下划线滑动效果
Sep 08 Javascript
vue3.0实现插件封装
Dec 14 Vue.js
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数组实例总结与说明
2011/08/23 PHP
PHP打开和关闭文件操作函数总结
2014/11/18 PHP
Yii框架调试心得--在页面输出执行sql语句
2014/12/25 PHP
分享10段PHP常用代码
2015/11/11 PHP
php中如何执行linux命令详解
2018/11/06 PHP
如何在PHP中使用数组
2020/06/09 PHP
PHP基于ip2long实现IP转换整形
2020/12/11 PHP
JavaScript中的object转换函数toString()与valueOf()介绍
2014/12/31 Javascript
jQuery创建DOM元素实例解析
2015/01/19 Javascript
使用AOP改善javascript代码
2015/05/01 Javascript
jquery获取文档高度和窗口高度汇总
2016/01/25 Javascript
JS生成和下载二维码的代码
2016/12/07 Javascript
浅谈jQuery中事情的动态绑定
2017/02/12 Javascript
JS简单判断函数是否存在的方法
2017/02/13 Javascript
Javascript下拉刷新的简单实现
2017/02/14 Javascript
canvas绘制环形进度条
2017/02/23 Javascript
jQuery 判断元素整理汇总
2017/02/28 Javascript
运用jQuery写的验证表单(实例讲解)
2017/07/06 jQuery
JavaScript实现设置默认日期范围为最近40天的方法分析
2017/07/12 Javascript
Angular5给组件本身的标签添加样式class的方法
2018/04/07 Javascript
javascript实现视频弹幕效果(两个版本)
2019/11/28 Javascript
vue-cli4项目开启eslint保存时自动格式问题
2020/07/13 Javascript
微信小程序实现加入购物车滑动轨迹
2020/11/18 Javascript
Python中struct模块对字节流/二进制流的操作教程
2017/01/21 Python
解决python3爬虫无法显示中文的问题
2018/04/12 Python
redis之django-redis的简单缓存使用
2018/06/07 Python
python爬取2021猫眼票房字体加密实例
2021/02/19 Python
社区消防工作实施方案
2014/03/21 职场文书
《宋庆龄故居的樟树》教学反思
2014/04/07 职场文书
如何写早恋检讨书
2014/09/10 职场文书
四风问题对照检查材料整改措施
2014/09/27 职场文书
2015年大学宣传部工作总结
2015/05/26 职场文书
原生JS实现飞机大战小游戏
2021/06/09 Javascript
Python anaconda安装库命令详解
2021/10/16 Python
JavaScript数组 几个常用方法总结
2021/11/11 Javascript
python中出现invalid syntax报错的几种原因分析
2022/02/12 Python