文本溢出处理

const overflowhidden = (rows: number = 1, str: string) => {
    let text = document.getElementById('**');
    let style = window.getComputedStyle(text, null);
    let { lineHeight } = style;
    let at = rows * parseInt(lineHeight, 10);
    let tempstr = str;
    text.innerHTML = tempstr;
    let len = tempstr.length;
    let i = 0;
    if (text.offsetHeight <= at) {
      // 如果所有文本在写入html后文本没有溢出,那不需要做溢出处理
    } else {
      let temp = '';
      text.innerHTML = temp;
      while (text.offsetHeight <= at) {
        temp = tempstr.substring(0, i + 1);
        i += 1;
        text.innerHTML = temp;
      }
      let slen = temp.length;
      tempstr = temp.substring(0, slen - 1);
      len = tempstr.length;
      temp = `${tempstr.substring(0, len - 3)}...`;
      text.innerHTML = temp;
      text.height = `${at}px`;
    }
  };
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值