js中,怎么计算一个字符串宽度??
我从后台传到页面一个对象,从这个对象中获取一个字符串。根据这个对象动态填充一个div,但是有些属性的内容过长,需要做换行处理。
现在是想获取这个字段的宽度,如果过长就换行。
求解。
------解决方案--------------------http://bbs.csdn.net/topics/300032210,算一下单个字符的长度, 然后。。。。
------解决方案--------------------js获取字符串的长度很简单吧 就是字符串的一个属性
------解决方案--------------------楼主说的宽度。width么?
字符串在什么标签内?
------解决方案--------------------用个visibility:hidden的浮动的层来计算,浮动层的样式设置成和你的容器样式一样
<style>
.content{font-size:20px}
#dvCompute{position:absolute;visibility:hidden;}
</style>
<div class="content" id="dvCompute"></div>
<script>
function Compute(v) {
var d = document.getElementById('dvCompute');
d.innerHTML = v;
return { w: d.offsetWidth, h: d.offsetHeight };
}
window.onload = function () {
var p = Compute('要计算的内容aaaaaaaaaaaaaaaaaaaaaaaaaaaa<br/>123132');
alert(p.w + '\n' + p.h);
var p = Compute('要计算的内容aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa<br/>123132<br/>123132');
alert(p.w + '\n' + p.h);
}
</script>
------解决方案--------------------单纯文本应该很难,如果在标签内还能想想办法。
------解决方案--------------------