/**
* 控制文章的显示,以中文为基础
* s 待处理的字符串
* l 截取的长度
* d 是否出现“...”,默认出现
*/
function subStr(s,l,d){
if(s == undefined){
return "";
}
l=l*2;
var r = /[^\x00-\xff]/g;
if(s.replace(r, "zz").length <= l){
return s;
}
var m = Math.floor(l/2);
for(var i=m; i<s.length; i++){
if(s.substring(0, i).replace(r, "zz").length>=l) {
if(d==undefined){
return s.substring(0, i) +"...";
}else{
return s.substring(0, i);
}
}
}
return s;
}
测试如下:
document.write(subStr("我的未来不是梦!!!!",5));
document.write("<br/>");
document.write(subStr("wo de wei lai bu 是梦!!!!",5));
document.write("<br/>");
document.write(subStr("abcdefguiouiosanxzm,hjkad;askl;dsaj",5));
结果如下:
我的未来不...
wo de wei ...
abcdefguio...