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 URL锚点取值方法
Feb 25 Javascript
jqPlot jquery的页面图表绘制工具
Jul 25 Javascript
快速解决jQuery与其他库冲突的方法介绍
Jan 02 Javascript
使用变量动态设置js的属性名
Oct 19 Javascript
理解和运用JavaScript的闭包机制
Aug 13 Javascript
使用plupload自定义参数实现多文件上传
Jul 19 Javascript
Bootstrap3下拉菜单的实现
Feb 22 Javascript
Angular2中select用法之设置默认值与事件详解
May 07 Javascript
ng-zorro-antd 入门初体验
Dec 03 Javascript
详解基于React.js和Node.js的SSR实现方案
Mar 21 Javascript
Jquery实现获取子元素的方法分析
Aug 24 jQuery
Vue 集成 PDF.js 实现 PDF 预览和添加水印的步骤
Jan 22 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
收音机史话 - 1960年代前后的DIY
2021/03/02 无线电
PHP 读取文件内容代码(txt,js等)
2009/12/06 PHP
php文档工具PHP Documentor安装与使用方法
2016/01/25 PHP
php版微信自动获取收货地址api用法示例
2016/09/22 PHP
laravel config文件配置全局变量的例子
2019/10/13 PHP
JavaScript TO HTML 转换
2006/06/26 Javascript
用JQuery调用Session的实现代码
2010/10/29 Javascript
在IE 浏览器中使用 jquery的fadeIn() 效果 英文字符字体加粗
2011/06/02 Javascript
百度地图自定义控件分享
2015/03/04 Javascript
JS实现向表格行添加新单元格的方法
2015/03/30 Javascript
jQuery插件ajaxfileupload.js实现上传文件
2020/10/23 Javascript
jQuery模拟select实现下拉菜单功能
2016/06/20 Javascript
JS+CSS3模拟溢出滚动效果
2016/08/12 Javascript
leaflet的开发入门教程
2016/11/17 Javascript
bootstrap表单按回车会自动刷新页面的解决办法
2017/03/08 Javascript
bootstrap动态添加面包屑(breadcrumb)及其响应事件的方法
2017/05/25 Javascript
NodeJS 实现手机短信验证模块阿里大于功能
2017/06/19 NodeJs
小程序清理本地缓存的方法
2018/08/17 Javascript
举例区分Python中的浅复制与深复制
2015/07/02 Python
Python3.6安装及引入Requests库的实现方法
2018/01/24 Python
Windows平台Python编程必会模块之pywin32介绍
2019/10/01 Python
python 求定积分和不定积分示例
2019/11/20 Python
用python的turtle模块实现给女票画个小心心
2019/11/23 Python
浅谈对python中if、elif、else的误解
2020/08/20 Python
Canvas制作的下雨动画的示例
2018/03/06 HTML / CSS
英国办公家具网站:Furniture At Work
2019/10/07 全球购物
小学生学雷锋演讲稿
2014/04/25 职场文书
企业理念标语
2014/06/09 职场文书
新闻编辑求职信
2014/07/13 职场文书
法定代表人证明书
2014/11/28 职场文书
太空授课观后感
2015/06/17 职场文书
银行工作心得体会范文
2016/01/23 职场文书
2016优秀班主任个人先进事迹材料
2016/02/26 职场文书
决心书格式及范文
2019/06/24 职场文书
python pygame入门教程
2021/06/01 Python
Spring Boot DevTools 全局配置学习指南
2022/03/31 Java/Android