一行半省略号显示

15 篇文章 0 订阅

项目场景:

1,超出省略;
2,超出1.5(或指定行)增加省略号替换文本;


功能分析:

1,获取文本长度;
2,获取视口宽度;
3,计算宽度比例,行显示字数;
4,超出渲染替换文本;


功能实现:

Vue获取文本宽度
转载自#蓝色的落叶

//获取计算后的font-size
getComputedStyle(className[0],undefined).getPropertyValue('font-size');
<script type="text/javascript">
var dom = document.getElementsByClassName("love");
GetLine(1.5,dom);
function jsLine(line,className){
	var textLength=className[0]['childNodes'][0].length;//文本长度
	var fontSize=getComputedStyle(className[0],undefined).getPropertyValue("font-size").substr(0,2);//获取字体大小
	var lineNum=Math.round(className[0].clientWidth/fontSize);//四舍五入,一行有多少字
	if(textLength>(lineNum*line)){
		var newText=className[0].innerText.substr(0,(Math.round(lineNum*line)))+'...';
		className[0].innerText=newText;
	}
}
</script>


内容总结:

1,获取已知参数;
2,检索可用信息;
3,对比兼容数据,考虑存在逻辑方案;
4,输出结果集;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

曲江涛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值