vue控制多行文字展开收起的实现示例


Posted in Javascript onOctober 11, 2019

这里讲一下,如何使用vue控制多行文字展开收起(也叫控制文字展开隐藏)。

效果:

这里设置了控制三行,如果超过三行会展示,“显示更多” 超出文字显示省略号。点击“显示更多”会展开所有文案,按钮变成“收起”

vue控制多行文字展开收起的实现示例

(未超出三行的时候)

vue控制多行文字展开收起的实现示例

(展开)

vue控制多行文字展开收起的实现示例

(收起)

代码实现:

<template>
 <div>
  <p class="m-content overflow-line" id="J_description">{{introduce}}</p>
  <button type="button" class="btn-more" v-if="isShowMore" id="J_btnmore" @click="showmoreDesc($event)">查看更多</button>
 </div>
</template>
<script>
 export default {
  name: 'Spread',
  data() {
   return {
    isShowMore: false,
    isDescStatus: true,
    introduce: ""
   };
  },
  props: {
   mes2: {
    type: String,
    default: ""
   }
  },
  methods: {
   showmoreDesc(e) {
    let el = e.currentTarget;
    el.previousElementSibling.classList[!this.isDescStatus ? 'add' : 'remove']('overflow-line');
    el.classList[this.isDescStatus ? 'add' : 'remove']('more-collapse');
    el.innerHTML = !this.isDescStatus ? '查看更多' : '收起';
    this.isDescStatus = !this.isDescStatus;
    that.isShowMore = true;
   }
  },
  watch: {
   mes2(val) {
    this.introduce = val;
    if (this.introduce.length > 75) {
     this.isShowMore = true;
    }
   }
  }
 };
</script>

<style lang="less" scoped>
 .m-content {
  &.overflow-line {
   display: -webkit-box;
   -webkit-box-orient: vertical;
   -webkit-line-clamp: 3;
   overflow: hidden;
  }
 }

 .btn-more {
  color: #fff;
  float: right;
  color: #5383E7;
  position: relative;
  margin-top: rc(5);
  padding-right: rc(33);

  &.more-collapse {

   &::after,
   &::before {
    top: 2px;
    transform: rotate(180deg);
   }

   &::before {
    top: 4px;
   }
  }

  &::after,
  &::before {
   width: 0;
   height: 0;
   content: '';
   position: absolute;
   right: 0;
   top: 7px;
   border: rc(12) solid transparent;
  }

  &::after {
   border-top-color: #5383E7;
   z-index: 1;
  }

  &::before {
   border-top-color: #1c2239;
   z-index: 2;
   top: 5px;
  }

 }
</style>

使用组件

<Spread :mes2="需要传递的文字数据"></Spread>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js使用循环清空某个div中的input标签值
Sep 29 Javascript
node.js中的fs.fchmod方法使用说明
Dec 16 Javascript
jQuery使用之处理页面元素用法实例
Jan 19 Javascript
使用JavaScript和CSS实现文本隔行换色的方法
Nov 04 Javascript
jquery拖拽排序简单实现方法(效果增强版)
Feb 16 Javascript
浅谈javascript运算符——条件,逗号,赋值,()和void运算符
Jul 15 Javascript
基于jQuery的AJAX和JSON实现纯html数据模板
Aug 09 Javascript
webpack独立打包和缓存处理详解
Apr 03 Javascript
Vue实现用户自定义字段显示数据的方法
Aug 28 Javascript
详解Vue.directive 自定义指令
Mar 27 Javascript
vue@cli3项目模板怎么使用public目录下的静态文件
Jul 07 Javascript
JavaScript实现与web通信的方法详解
Aug 07 Javascript
这15个Vue指令,让你的项目开发爽到爆
Oct 11 #Javascript
js脚本中执行java后台代码方法解析
Oct 11 #Javascript
基于js实现复制内容到操作系统粘贴板过程解析
Oct 11 #Javascript
ES6之Proxy的get方法详解
Oct 11 #Javascript
vue组件 keep-alive 和 transition 使用详解
Oct 11 #Javascript
jquery将json转为数据字典的实例代码
Oct 11 #jQuery
JavaScript实现抖音罗盘时钟
Oct 11 #Javascript
You might like
PHP与MySQL交互使用详解
2006/10/09 PHP
在TP5数据库中四个字段实现无限分类的示例
2019/10/18 PHP
HTML 自动伸缩的表格Table js实现
2009/04/01 Javascript
js Map List 遍历使用示例
2013/07/10 Javascript
js jquery ajax的几种用法总结(及优缺点介绍)
2014/01/28 Javascript
使用text方法获取Html元素文本信息示例
2014/09/01 Javascript
Jquery修改页面标题title其它JS失效的解决方法
2014/10/31 Javascript
JavaScript列表框listbox全选和反选的实现方法
2015/03/18 Javascript
jQuery+css3实现Ajax点击后动态删除功能的方法
2015/08/10 Javascript
详解如何在NodeJS项目中优雅的使用ES6
2017/04/22 NodeJs
简单谈谈React中的路由系统
2017/07/25 Javascript
基于vue,vue-router, vuex及addRoutes进行权限控制问题
2018/05/02 Javascript
JavaScript事件冒泡与事件捕获实例分析
2018/08/01 Javascript
vue.js响应式原理解析与实现
2020/06/22 Javascript
Layui选项卡制作历史浏览记录的方法
2019/09/28 Javascript
JavaScript实现轮播图片完整代码
2020/03/07 Javascript
[36:33]完美世界DOTA2联赛循环赛 Matador vs Forest 第一场 11.06
2020/11/06 DOTA
在Python中用split()方法分割字符串的使用介绍
2015/05/20 Python
Python中实现三目运算的方法
2015/06/21 Python
Pycharm 设置自定义背景颜色的图文教程
2018/05/23 Python
python计算两个地址之间的距离方法
2018/06/09 Python
对python实现合并两个排序链表的方法详解
2019/01/23 Python
django 基于中间件实现限制ip频繁访问过程详解
2019/07/30 Python
更新pip3与pyttsx3文字语音转换的实现方法
2019/08/08 Python
详解CSS3实现响应式手风琴效果
2020/06/10 HTML / CSS
俄罗斯便宜的在线服装商店:GroupPrice
2020/04/10 全球购物
喜之郎果冻广告词
2014/03/20 职场文书
团队拓展活动方案
2014/08/28 职场文书
在宿舍喝酒的检讨书
2014/09/28 职场文书
装饰技术负责人岗位职责
2015/04/13 职场文书
二审答辩状格式
2015/05/22 职场文书
民事二审代理词
2015/05/25 职场文书
新农村建设指导员工作总结
2015/08/13 职场文书
幼儿园安全教育随笔
2015/08/14 职场文书
护士医德医风心得体会
2016/01/25 职场文书
《包身工》教学反思
2016/02/23 职场文书