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 Xml增删改查(IE下)操作实现代码
Jan 30 Javascript
JavaScript实现动态增加文件域表单
Feb 12 Javascript
JS 自定义带默认值的函数
Jul 21 Javascript
40个新鲜出炉的jQuery 插件和免费教程[上]
Jul 24 Javascript
深入理解jquery中的事件与动画
May 24 Javascript
connection reset by peer问题总结及解决方案
Oct 21 Javascript
深入理解JavaScript中的尾调用(Tail Call)
Feb 07 Javascript
React-Native中props具体使用详解
Sep 04 Javascript
Vue.js实现可配置的登录表单代码详解
Mar 29 Javascript
vue-router懒加载速度缓慢问题及解决方法
Nov 25 Javascript
使用vuepress搭建静态博客的示例代码
Feb 14 Javascript
VUE递归树形实现多级列表
Jul 15 Vue.js
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
推荐文章系统(一)
2006/10/09 PHP
PHP 上传文件大小限制
2009/07/05 PHP
PHP+MySQL 制作简单的留言本
2009/11/02 PHP
vs中通过剪切板循环来循环粘贴不同内容
2011/04/30 PHP
php读取der格式证书乱码解决方法
2015/06/22 PHP
PHP获取网页所有连接的方法(附demo源码下载)
2016/03/30 PHP
php gethostbyname获取域名ip地址函数详解
2010/01/24 Javascript
js实现弹出窗口、页面变成灰色并不可操作的例子分享
2014/05/10 Javascript
yepnope.js使用详解及示例分享
2014/06/23 Javascript
如何改进javascript代码的性能
2015/04/02 Javascript
javascript html5 canvas实现可拖动省份的中国地图
2016/03/11 Javascript
JS对HTML表格进行增删改操作
2016/08/22 Javascript
JavaScript正则表达式简单实用实例
2017/06/23 Javascript
在 React、Vue项目中使用SVG的方法
2018/02/09 Javascript
JS实现十分钟倒计时代码实例
2018/10/18 Javascript
JavaScript作用域链实例详解
2019/01/21 Javascript
js中console在一行内打印字符串和对象的方法
2019/09/10 Javascript
Vue中登录验证成功后保存token,并每次请求携带并验证token操作
2020/09/08 Javascript
[03:42]2014DOTA2西雅图国际邀请赛 Navi战队巡礼
2014/07/07 DOTA
linux系统使用python监测系统负载脚本分享
2014/01/15 Python
深入浅析ImageMagick命令执行漏洞
2016/10/11 Python
python脚本当作Linux中的服务启动实现方法
2019/06/28 Python
Python自动生成代码 使用tkinter图形化操作并生成代码框架
2019/09/18 Python
python如何删除列为空的行
2020/07/17 Python
利用python进行文件操作
2020/12/04 Python
Python Process创建进程的2种方法详解
2021/01/25 Python
html5实现移动端适配完美写法
2017/11/16 HTML / CSS
Ruby如何创建一个线程
2013/03/10 面试题
创建服务型党组织实施方案
2014/02/25 职场文书
村长贪污检举信
2014/04/04 职场文书
阅兵口号
2014/06/19 职场文书
试用期工作表现自我评价
2015/03/06 职场文书
工厂门卫岗位职责
2015/04/13 职场文书
十二生肖观后感
2015/06/12 职场文书
详解nginx location指令
2022/01/18 Servers
Vue监视数据的原理详解
2022/02/24 Vue.js