在工作中,我们有时需要将文章列表内容多出的隐藏并显示省略号,网上大多是用css实现,但不兼容,在这里教大家用jq实现溢出隐藏显示省略号。
原理很简单。就是控制盒子里的内容。
<div class="box">东风夜放花千树,更吹落,星如雨,宝马雕车香满路。凤箫声动,玉壶光转,一夜鱼龙舞。蛾儿雪柳黄金缕,笑语盈盈暗香去。众里寻他千百度,蓦然回首,那人却在,灯火阑珊处。</div>
.box{
width: 500px;
height: 40px;
margin: 0 auto;
line-height: 20px;
}
$(function(){
var content_arr=[];//定义一个空数组
$('.box').each(function(){//遍历box内容
var content=$.trim($(this).text());//去掉前后文空格
content_arr.push(content);//内容放进数组
})
for(var i=0;i<content_arr.length;i++){//遍历循环数组
if(content_arr[i].length>=50){//如果数组长度(也就是文本长度)大于等于50(数字可自己定义)
content=content_arr[i].substr(0,50)+'...';//添加省略号并放进box文字内容后面
$(".box").eq(i).text(content);
}else{
content=content_arr[i];
$(".box").eq(i).text(content);
}
}
})
效果如下图所示:
结束!!!