怎么截取div中文字的长度 问题大意如下:在html中,用一个div显示消息的内容,当内容多于两行时后面的内容就隐藏掉,请问大侠,用js怎么做?感谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 设置好div的高度和宽度,然后用overflow:hidden将超出的部分隐藏 <div style="width:200px;height:200px;text-overflow:clip;">...</div> 请参考: DIV溢出文字用省略号点代替http://www.msxindl.com/texiao/content.asp?id=9 <div style="width:20px;height:20px;overflow:hidden">aaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbcccccccccccccccccccccdddddddddddddddddddddddd</div>div的高度,宽度你写固定的就可以了 <div style="width:160px; border:1px solid red; height:2em; line-height:1em; overflow:hidden"> 第一行的内容<br/> 第二行的内容<br/> 第三行的内容</div><br/><div style="width:160px; border:1px solid red; height:2em; line-height:1em; overflow:hidden;"> 问题大意如下:在html中,用一个div显示消息的内容, 当内容多于两行时后面的内容就隐藏掉,请问大侠, 用js怎么做?感谢!</div> <div style="width:20px;height:20px;overflow:hidden"> aaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbb ccccccccccccccccccccc dddddddddddddddddddddddd </div> <!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> </head> <body> <div id="showStrDiv"> 在html中,用一个div显示消息的内容,当内容多于两行时后面的内容就隐藏掉,请问大侠,用js怎么做 </div> </body> <script> //截取字符串,超长的部分用省略号代替 String.prototype.overHide = function(length) { var tmp = 0; var len = 0; var okLen = 0; var okStr = ""; for(var i = 0;i < length;i++) { if(this.charCodeAt(i) > 255) tmp += 2; //大于255表示汉字,一个汉字为2个字符 else len += 1;//小于等于255表示字符或者数字,为1个字符 okLen += 1; //计数器,等于length if(tmp + len == length) { okStr = this.substring(0,okLen); break; } if(tmp + len > length) { okStr = this.substring(0,okLen - 1); break; } } if(okStr < this) return okStr + "..."; else return this + ""; } alert("Div显示的全部消息内容:" + document.getElementById("showStrDiv").innerText); var str = document.getElementById("showStrDiv").innerText; document.getElementById("showStrDiv").innerText = str.overHide(12); </script></html> 关于页面刷新的问题 jquery json数组问题 SVG中嵌入JavaScript 请教下面这个javascript异常是怎么产生的? DTD的一个问题 firefox如何支持这句:window.frames['iframes'].test(); 这个什么意思? window.returnValue 的问题???着急啊 运行正常,且正确,但为什么每次都有这样的错误提示 这个问题怎么解决? 请大家指点 制作JSP网站怎么验证HTML标签? 请问一个用event限制输入数字的问题
<div style="width:200px;height:200px;text-overflow:clip;">
...
</div>
aaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbb
ccccccccccccccccccccc
dddddddddddddddddddddddd
</div>
div的高度,宽度你写固定的就可以了
border:1px solid red;
height:2em;
line-height:1em;
overflow:hidden">
第一行的内容<br/>
第二行的内容<br/>
第三行的内容
</div><br/><div style="width:160px;
border:1px solid red;
height:2em;
line-height:1em;
overflow:hidden;">
问题大意如下:在html中,用一个div显示消息的内容,
当内容多于两行时后面的内容就隐藏掉,请问大侠,
用js怎么做?感谢!
</div>
aaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbb
ccccccccccccccccccccc
dddddddddddddddddddddddd
</div>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>
<body>
<div id="showStrDiv">
在html中,用一个div显示消息的内容,当内容多于两行时后面的内容就隐藏掉,请问大侠,用js怎么做
</div>
</body>
<script>
//截取字符串,超长的部分用省略号代替
String.prototype.overHide = function(length)
{
var tmp = 0;
var len = 0;
var okLen = 0;
var okStr = "";
for(var i = 0;i < length;i++)
{
if(this.charCodeAt(i) > 255) tmp += 2; //大于255表示汉字,一个汉字为2个字符
else len += 1;//小于等于255表示字符或者数字,为1个字符
okLen += 1; //计数器,等于length
if(tmp + len == length)
{
okStr = this.substring(0,okLen);
break;
}
if(tmp + len > length)
{
okStr = this.substring(0,okLen - 1);
break;
}
}
if(okStr < this) return okStr + "...";
else return this + "";
}
alert("Div显示的全部消息内容:" + document.getElementById("showStrDiv").innerText);
var str = document.getElementById("showStrDiv").innerText;
document.getElementById("showStrDiv").innerText = str.overHide(12);
</script>
</html>