標籤:
原文:ellipsis: function(value, len, word) { //判斷value有沒有超過指定長度 if (value && value.length > len) { //word的作用就是盡量不讓一個完整的單詞被部分省略 if (word) { var vs = value.substr(0, len - 2), //猜測單詞的界限符 index = Math.max(vs.lastIndexOf(‘ ‘), vs.lastIndexOf(‘.‘), vs.lastIndexOf(‘!‘), vs.lastIndexOf(‘?‘));//保留一個容忍長度len - 15,過短的話,影響表現效果 if (index !== -1 && index >= (len - 15)) { return vs.substr(0, index) + "..."; } } return value.substr(0, len - 3) + "..."; } return value; } 經修改:
function ellipsis(val, len, word) { if (val && val.length > len) { if (word) { var vs = val.substr(0, len - 1) var i = Math.max(vs.lastIndexOf(‘ ‘), vs.lastIndexOf(‘.‘), vs.lastIndexOf(‘!‘), vs.lastIndexOf(‘?‘)) if ( i !== -1 && i >= (len-15) ) { return vs.substr(0, i) + ‘...‘ } } return val.substr(0, len) + ‘...‘ } return val }
調用方式:
var aa="你是誰?薩達哈撒"; var bb=ellipsis(aa,5); console.log(bb);
Js文本溢出自動添加省略符號ellipsis