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 相关文章推荐
js/jquery去掉空格,回车,换行示例代码
Nov 05 Javascript
得到form下的所有的input的js代码
Nov 07 Javascript
IE下双击checkbox反应延迟问题的解决方法
Mar 27 Javascript
jQuery 1.9使用$.support替代$.browser的使用方法
May 27 Javascript
基于jQuery Bar Indicator 插件实现进度条展示效果
Sep 30 Javascript
根据输入邮箱号跳转到相应登录地址的解决方法
Dec 13 Javascript
微信小程序-小说阅读小程序实例(demo)
Jan 12 Javascript
使用 Javascript 实现浏览器推送提醒功能的示例
Nov 03 Javascript
vue中过滤器filter的讲解
Jan 21 Javascript
Vue使用Canvas绘制图片、矩形、线条、文字,下载图片
Apr 26 Javascript
Vue中的循环及修改差值表达式的方法
Aug 29 Javascript
js防抖函数和节流函数使用场景和实现区别示例分析
Apr 11 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设计模式 Strategy(策略模式)
2011/06/26 PHP
探讨PHP删除文件夹的三种方法
2013/06/09 PHP
php中session过期时间设置及session回收机制介绍
2014/05/05 PHP
PHP关于htmlspecialchars、strip_tags、addslashes的解释
2014/07/04 PHP
学习thinkphp5.0验证类使用方法
2017/11/16 PHP
PHP实现简单登录界面
2019/10/23 PHP
javascript之解决IE下不渲染的bug
2007/06/29 Javascript
jQuery使用animate创建动画用法实例
2015/08/07 Javascript
webpack项目使用eslint建立代码规范实现
2019/05/16 Javascript
vue实现后台管理权限系统及顶栏三级菜单显示功能
2019/06/19 Javascript
vue实现拖拽的简单案例 不超出可视区域
2019/07/25 Javascript
JS实现小星星特效
2019/12/24 Javascript
vue项目在线上服务器访问失败原因分析
2020/08/14 Javascript
浅谈es6中的元编程
2020/12/01 Javascript
[02:01]大师之路——DOTA2完美大师赛11月论剑上海
2017/11/06 DOTA
Python装饰器使用示例及实际应用例子
2015/03/06 Python
python单例模式实例分析
2015/04/08 Python
Python中获取对象信息的方法
2015/04/27 Python
Python 爬虫图片简单实现
2017/06/01 Python
Django实战之用户认证(用户登录与注销)
2018/07/16 Python
bluepy 一款python封装的BLE利器简单介绍
2019/06/25 Python
Python (Win)readline和tab补全的安装方法
2019/08/27 Python
关于Django Models CharField 参数说明
2020/03/31 Python
使用Python将图片转正方形的两种方法实例代码详解
2020/04/29 Python
四方通行旅游网:台湾订房、出国旅游
2017/09/20 全球购物
全球性的在线鞋类品牌:Public Desire
2019/04/03 全球购物
以实惠的价格轻松租车,免费取消:Easyrentcars
2019/07/16 全球购物
彪马法国官网:PUMA法国
2019/12/15 全球购物
班组长安全职责
2014/01/05 职场文书
音乐教学案例
2014/01/30 职场文书
优秀求职信
2014/05/29 职场文书
地理信息科学专业推荐信
2014/09/08 职场文书
2015年化妆品销售工作总结
2015/05/11 职场文书
物业保洁员管理制度
2015/08/05 职场文书
教师节主题班会方案
2015/08/17 职场文书
SQL Server中的游标介绍
2022/05/20 SQL Server