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 相关文章推荐
HTML颜色选择器实现代码
Nov 23 Javascript
基于JQuery实现鼠标点击文本框显示隐藏提示文本
Feb 23 Javascript
扩展JavaScript功能的正确方法(译文)
Apr 12 Javascript
JavaScript打开word文档的实现代码(c#)
Apr 16 Javascript
js原生appendChild的bug解决心得分享
Jul 01 Javascript
谈谈JSON对象和字符串之间的相互转换JSON.stringify(obj)和JSON.parse(string)
Oct 01 Javascript
基于angularJS的表单验证指令介绍
Oct 21 Javascript
jQuery弹出窗口打开链接的实现代码
Dec 24 Javascript
基于Bootstrap的网页设计实例
Mar 01 Javascript
Vue服务器渲染Nuxt学习笔记
Jan 31 Javascript
微信小程序上传图片并等比列压缩到指定大小的实例代码
Oct 24 Javascript
js仿淘宝放大镜效果
Dec 28 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安装为Apache DSO
2006/10/09 PHP
经典的PHPer为什么被认为是草根?
2007/04/02 PHP
非常实用的php验证码类
2016/05/15 PHP
javascript自执行函数之伪命名空间封装法
2010/12/25 Javascript
js对象数组按属性快速排序
2011/01/31 Javascript
基于编写jQuery的无缝滚动插件
2014/08/02 Javascript
jQuery监控文本框事件并作相应处理的方法
2015/04/16 Javascript
JS中获取函数调用链所有参数的方法
2015/05/07 Javascript
在AngularJS应用中实现一些动画效果的代码
2015/06/18 Javascript
js实现超简单的展开、折叠目录代码
2015/08/28 Javascript
快速移动鼠标触发问题及解决方法(ECharts外部调用保存为图片操作及工作流接线mouseenter和mouseleave)
2016/08/29 Javascript
Javascript 详解封装from表单数据为json串进行ajax提交
2017/03/29 Javascript
一步步教你利用webpack如何搭一个vue脚手架(超详细讲解和注释)
2018/01/08 Javascript
vue 国际化 vue-i18n 双语言 语言包
2018/06/07 Javascript
一文读懂ES7中的javascript修饰器
2019/05/06 Javascript
vue 实现通过vuex 存储值 在不同界面使用
2019/11/11 Javascript
vue radio单选框,获取当前项(每一项)的value值操作
2020/09/10 Javascript
Python基于回溯法子集树模板解决旅行商问题(TSP)实例
2017/09/05 Python
Python复制Word内容并使用格式设字体与大小实例代码
2018/01/22 Python
对Python+opencv将图片生成视频的实例详解
2019/01/08 Python
Python脚本修改阿里云的访问控制列表的方法
2019/03/08 Python
python pycharm的安装及其使用
2019/10/11 Python
使用Python文件读写,自定义分隔符(custom delimiter)
2020/07/05 Python
HTML5和CSS3让网页设计提升到下一个高度
2009/08/14 HTML / CSS
自然健康的概念:Natural Healthy Concepts
2020/01/26 全球购物
药学专业学生的自我评价分享
2014/02/06 职场文书
大学军训感言1500字
2014/03/09 职场文书
商务日语专业自荐信
2014/04/17 职场文书
教师党员岗位承诺书
2014/05/29 职场文书
幼儿生日活动方案
2014/08/27 职场文书
中国合伙人观后感
2015/06/02 职场文书
消防宣传语大全
2015/07/13 职场文书
大学生暑期社会实践的个人总结!
2019/07/17 职场文书
CSS预处理框架——Stylus
2021/04/21 HTML / CSS
golang slice元素去重操作
2021/04/30 Golang
关于windows server 2012 DC 环境 重启后蓝屏代码:0xc00002e2的问题
2022/05/25 Servers