如何截取字符串,使其在瀏覽器上顯示相同長度?

如何實現如下功能?


乍一看是不是想到了直接通過substring截取,但是這樣會面臨一個問題:有的標題中有中文,有的標題中有字母數字,這樣如果直接採用substring截取固定個數字符,瀏覽器上顯示仍然會不整齊,這是因爲瀏覽器上顯示中文所佔用的像素要多於字母和數字。採用此法截取後效果如下圖:




如何解決問題呢?

通過正則表達式匹配字符串,得出真實長度,之後按照真實長度等比例進行截取:

(此在js中進行截取)

<script type="text/javascript">
var title="${v.title}";
var id="${v.id}";
var realLength=(title.replace(/[^\x00-\xff]/g,"**").length+1)/2
if(realLength>14){
title=title.substring(0, 14*(title.length/realLength))+"...";
}
$("#"+id).html(title);
       //alert(realLength);

</script>


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章