为了账号安全,请及时绑定邮箱和手机立即绑定

内容超出指定行数用省略号表示,用js怎么写

内容超出指定行数用省略号表示,用js怎么写

哎呦不错哦JXL 2016-04-01 13:57:26
查看完整描述

2 回答

?
woshiajuana

TA贡献211条经验 获得超152个赞

这个的话需要算出指定一行所占用的字数,然后js用substring()方法截取即可,记得省略号需要占用一定的空间,所以你用一行算出的字数乘以你要显示的行数还要减去省略号的长度,用js截取后记得加上省略号

其实可以用CSS控制,

overflow: hidden;

display: -webkit-box;

-webkit-line-clamp: 2;            //(你想显示的行数)

-webkit-box-orient: vertical;

(使用CSS控制需要考虑到兼容性,你放字的元素需要设定高度,然后还需要给一个行高,且行高要等于元素的高度除以你想显示的行数即可)

查看完整回答
1 反对 回复 2016-04-01
  • 哎呦不错哦JXL
    哎呦不错哦JXL
    如果这些文字里有英文有中文怎么办?用js怎么控制?
  • woshiajuana
    woshiajuana
    一般遇到这种情况都是选用CSS处理,如果一定要JS的话,就英文当成中文算,如果非得做得十分精准,那就需要先查找一下字符串里面的英文字母个数或者用正则表达式查找英文个数,再进行相应的处理
  • 哎呦不错哦JXL
    哎呦不错哦JXL
    怎么查找英文字母的个数,把英文当成中文?
点击展开后面2
?
woshiajuana

TA贡献211条经验 获得超152个赞

function getLength(str) 

{

      if(/[a-zA-Z]/.test(str))

        return str.match(/[a-z]/ig).length;

      } 

      return 0; 

//示例 

getLength('123dasdda'); 

帮你重新排版,底下二层回复排版无效···坑

查看完整回答
反对 回复 2016-04-06
  • 2 回答
  • 2 关注
  • 1601 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信