js实现文字截断功能


Posted in Javascript onSeptember 14, 2016

先前用jq做了一个文字截断功能,但是不用jq的项目要实现此功能还要引如jq显得过于麻烦。这里写了一个js的文字截断功能。直接上代码。 

HTML(测试用的): 

<div>我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox</div>
<div limit="10" >我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox</div>
<div limit="5" >我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox</div>
<div limit="2" >我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox</div>
<div >我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox</div>
<div limit="20" >我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox</div>
<div limit="100" >我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox</div>
<div>我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox我是pox</div>

JS: 

var limit=[];
    var Text=[];
    var Pox=document.getElementsByTagName('*');
    for(var i=0;i<Pox.length;i++){
     if(Pox[i].getAttribute("limit")){
      limit[i]=Pox[i].getAttribute("limit");
      Text[i]=Pox[i].innerHTML;
      if(limit[i]<Text[i].length){
       Pox[i].innerHTML=Text[i].substring(0,limit[i])+"...";
      }
     }
    }

这里用getElementsByTagName获取所有节点遍历,if(Pox[i].getAttribute("limit"))筛选含有limit这个自定义属性的节点,然后获取各个节点自定义属性limit的值,将其放入limit数组中,把各个节点文字放入Text数组中,将需要截断的值和文本长度作比较,进行截断。 

全部JS,这里写的自调:

<script type="text/javascript">
 window.onload=function(){
  (function limit(){
   var limit=[];
    var Text=[];
    var Pox=document.getElementsByTagName('*');
    for(var i=0;i<Pox.length;i++){
     if(Pox[i].getAttribute("limit")){
      limit[i]=Pox[i].getAttribute("limit");
      Text[i]=Pox[i].innerHTML;
      if(limit[i]<Text[i].length){
      Pox[i].innerHTML=Text[i].substring(0,limit[i])+"...";
      }
     }
    } 
   }());
   }
</script>

效果图:

js实现文字截断功能

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

Javascript 相关文章推荐
JavaScript高级程序设计(第3版)学习笔记7 js函数(上)
Oct 11 Javascript
jQuery的图片滑块焦点图插件整理推荐
Dec 07 Javascript
使用three.js 画渐变的直线
Jun 05 Javascript
javascript设计模式Constructor(构造器)模式
Aug 19 Javascript
jQuery实现磁力图片跟随效果完整示例
Sep 16 Javascript
微信小程序教程系列之视图层的条件渲染(10)
Apr 19 Javascript
jQuery zTree树插件动态加载实例代码
May 11 jQuery
微信小程序 共用变量值的实现
Jul 12 Javascript
Angular实现双向折叠列表组件的示例代码
Nov 21 Javascript
详解使用React制作一个模态框
Mar 14 Javascript
微信小程序学习笔记之跳转页面、传递参数获得数据操作图文详解
Mar 28 Javascript
vue和小程序项目中使用iconfont的方法
May 19 Javascript
jQuery版AJAX简易封装代码
Sep 14 #Javascript
原生JS实现首页进度加载动画
Sep 14 #Javascript
jquery判断iPhone、Android设备类型
Sep 14 #Javascript
Angularjs 实现分页功能及示例代码
Sep 14 #Javascript
Angularjs CURD 详解及实例代码
Sep 14 #Javascript
Angular Module声明和获取重载实例代码
Sep 14 #Javascript
javascript经典特效分享 手风琴、轮播图、图片滑动
Sep 14 #Javascript
You might like
PHP ajax 分页类代码
2008/11/13 PHP
PHP得到mssql的存储过程的输出参数功能实现
2012/11/23 PHP
利用Fix Rss Feeds插件修复WordPress的Feed显示错误
2015/12/19 PHP
Zend Framework教程之视图组件Zend_View用法详解
2016/03/05 PHP
获取HTML DOM节点元素的方法的总结
2009/08/21 Javascript
整理一些JavaScript的IE和火狐的兼容性注意事项
2011/03/17 Javascript
JS 页面计时器示例代码
2013/10/28 Javascript
Javascript让DEDECMS告别手写Tag
2014/09/01 Javascript
jQuery中:image选择器用法实例
2015/01/03 Javascript
实例详解jQuery结合GridView控件的使用方法
2016/01/04 Javascript
基于JavaScript代码实现随机漂浮图片广告
2016/01/05 Javascript
javascript获取wx.config内部字段解决微信分享
2016/03/09 Javascript
Vue实现购物车场景下的应用
2017/11/27 Javascript
js数组常用最重要的方法
2018/02/04 Javascript
JS中的算法与数据结构之列表(List)实例详解
2019/08/16 Javascript
解决vue项目,npm run build后,报路径错的问题
2020/08/13 Javascript
vue项目中openlayers绘制行政区划
2020/12/24 Vue.js
跟老齐学Python之玩转字符串(3)
2014/09/14 Python
Python实现压缩与解压gzip大文件的方法
2016/09/18 Python
Python二叉树的定义及常用遍历算法分析
2017/11/24 Python
python2和python3的输入和输出区别介绍
2018/11/20 Python
python统计中文字符数量的两种方法
2019/01/31 Python
Python实现操纵控制windows注册表的方法分析
2019/05/24 Python
python 将字符串中的数字相加求和的实现
2019/07/18 Python
使用celery和Django处理异步任务的流程分析
2020/02/19 Python
python实现坦克大战
2020/04/24 Python
Python 如何定义匿名或内联函数
2020/08/01 Python
Python collections.deque双边队列原理详解
2020/10/05 Python
python自动化测试三部曲之unittest框架的实现
2020/10/07 Python
mac系统下安装pycharm、永久激活、中文汉化详细教程
2020/11/24 Python
Python xlwings插入Excel图片的实现方法
2021/02/26 Python
html5时钟实现代码
2010/10/22 HTML / CSS
2014年党员承诺书范文
2014/05/20 职场文书
医学求职信
2014/05/28 职场文书
师德标兵事迹材料
2014/12/19 职场文书
导游词之湖北武当山
2019/09/23 职场文书