网页前端设计

http://www.86y.org

搜索文章

js截取字符串

用声音读出全文关注我吧
 2011/9/26 10:47:19 阅读次数:9736

 利用js截取字符串可以指定截取的长度,但是只能从左边开始截取。此效果主要是为了不加重服务器的压力写的。使用方法比较简单。

cutstr("news",40) //news是包含要截取的对像ID,40是截取的字符长度

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>js截取字符串长度-幸凡在线学习网</title>
</head>
<style>
#news{line-height:20px;background:#eee;border:1px solid #ddd;padding:5px;width:300px;font-size:12px;margin:0;}
#news li{border-bottom:1px solid #ccc; list-style:none;}
</style>
<script>
function trims(str,strlen)
{
	 var cutStr= str.replace(/^\s+|\s+$/g,"");
	 cutStr=replaces(cutStr," ","");
	 var cdt=""
	 var showstr="";
	 var t=0;
	 var h=0;
	 if (cutStr=="")
		 cutStr = "cutStr函数异常:字符串为空"; //------------来源长度检查
	 if(strlen==0)
		 cutStr = "cutStr函数异常:长度未指定"; 
	 if(parseInt(strlen)==0)cutStr = "cutStr函数异常:长度为0";
	 for(i=0;i<strlen;i++ )
	 {	//reg=/[\u4E00-\u9FA5]/g;id.substr(0,1)
		 if(cutStr.substr(i,1).match("[\u4e00-\u9fa5]"))
		 {  t=t+2;
		 	//alert("汉字");
			h=h+1;
		 }
		 else
			{t=t+1;//alert("英文");
			}
		if(t>strlen)
			break;		
	 }
	if (t-1>=strlen) 						//------判断是否到达指定长度 
		{
			if(h>=strlen/2)
				cutStr=left(cutStr,strlen/2);
			if((h>=1)&&(h<=strlen/2))
				cutStr=left(cutStr,strlen-h+1); //cutStr,strlen-h+1
			if(h==0)
				cutStr=left(cutStr,strlen+1);
		}
	 else 
		cutStr=cutStr;
		
	 //alert(h);	
	 //alert(t);
	 showstr=cutStr+"....";
	 return showstr;
}
function replaces(cont,bec,be){   //要替换的内容,替换字符串,替换成字符串
	cont=cont.replace(bec,be);
	return cont;
}
function left(mainStr,lngLen)
{ 
	if (lngLen>0)
		return mainStr.substring(0,lngLen);
	else
		return null;
}
function cutstr(std,len)
{
	var news = document.getElementById(std).getElementsByTagName("a");
	//alert(news.length);
	for (var i = 0; i < news.length; i++) {			
			news[i].innerHTML = trims(left(news[i].innerHTML,len),len);
	}
}//
window.onload=function(){
	cutstr("news",40)
}
</script>
<body>
<ul id="news">
	<li><a href="http://www.ok22.org/" title="是一个免费提供代码分享的一个网站,有最全的SEO资料,及Div+css,javascript,SEO学习网页前端设计,在线学习网,免费视频教程">adff要替换的内容替换字符串替换成字符换的内容替换字符串替串</a></li>
	<li><a href="http://www.ok22.org/" title="是一个免费提供代码分享的一个网站,有最全的SEO资料,及Div+css,javascript,SEO学习网页前端设计,在线学习网,免费视频教程">adff要替adfa换的内容替换字符串替换成字符换的内容替换字符串替串</a></li>
	<li><a href="http://www.ok22.org/" title="是一个免费提供代码分享的一个网站,有最全的SEO资料,及Div+css,javascript,SEO学习网页前端设计,在线学习网,免费视频教程">要adfa替换的adfa内容替换字符串替换成字符换的内容替换字符串替串</a></li>
	<li><a href="http://www.ok22.org/" title="是一个免费提供代码分享的一个网站,有最全的SEO资料,及Div+css,javascript,SEO学习网页前端设计,在线学习网,免费视频教程">要替换adfa的内容替换字符串替换成字符换的内容替换字符串替串</a></li>
	<li><a href="http://www.ok22.org/" title="是一个免费提供代码分享的一个网站,有最全的SEO资料,及Div+css,javascript,SEO学习网页前端设计,在线学习网,免费视频教程">要替换的内容adfa替换字符串替换成字符换的内容替换字符串替串</a></li>
	<li><a href="http://www.ok22.org/" title="是一个免费提供代码分享的一个网站,有最全的SEO资料,及Div+css,javascript,SEO学习网页前端设计,在线学习网,免费视频教程">要替换adfa的内容替换字符串替换成字符换的内容替换字符串替串</a></li>
	<li><a href="http://www.ok22.org/" title="是一个免费提供代码分享的一个网站,有最全的SEO资料,及Div+css,javascript,SEO学习网页前端设计,在线学习网,免费视频教程">要替adfa换的内容替换字符串替换成字符换的内容替换字符串替串</a></li>
	<li><a href="http://www.ok22.org/" title="是一个免费提供代码分享的一个网站,有最全的SEO资料,及Div+css,javascript,SEO学习网页前端设计,在线学习网,免费视频教程">要替adfa换的内容替换字符串替换成字符换的内容替换字符串替串</a></li>
	<li><a href="http://www.ok22.org/" title="是一个免费提供代码分享的一个网站,有最全的SEO资料,及Div+css,javascript,SEO学习网页前端设计,在线学习网,免费视频教程">要adfa替换的adfa内容替换字符串替换成字符换的内容替换字符串替串</a></li>
	<li><a href="http://www.ok22.org/" title="是一个免费提供代码分享的一个网站,有最全的SEO资料,及Div+css,javascript,SEO学习网页前端设计,在线学习网,免费视频教程">要替adfa换的内容adfa替换字符串替换成字符换的内容替换字符串替串</a></li>
	<li><a href="http://www.ok22.org/" title="是一个免费提供代码分享的一个网站,有最全的SEO资料,及Div+css,javascript,SEO学习网页前端设计,在线学习网,免费视频教程">要替adfa换的内容adfa替换字符串替换成字符换的内容替换字符串替串</a></li>
	<li><a href="http://www.ok22.org/" title="是一个免费提供代码分享的一个网站,有最全的SEO资料,及Div+css,javascript,SEO学习网页前端设计,在线学习网,免费视频教程">要替换的adfa内容替换字adfa符串替换成字符换的内容替换字符串替串</a></li>
	<li><a href="http://www.ok22.org/" title="是一个免费提供代码分享的一个网站,有最全的SEO资料,及Div+css,javascript,SEO学习网页前端设计,在线学习网,免费视频教程">aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</a></li>
</ul>
</body>
</html>

大家有什么问题或技术上的想法可以在此与大家分享,也可以加入前端爱好者QQ群(141999928)一起学习进步:【幸凡前端技术交流群】
0

如果您觉得本文的内容对您的学习有所帮助,捐赠与共勉,支付宝(左)或微信(右)

阅读全文内容关闭