最近做项目的时候需要得到所输入的字符串的宽度, 想了很久, 也google也很久, 最后还是无解.
后来想想, 是否可以变通一下, 从别的地方取得它的宽度. 经过一番头脑风暴.
终于得出了解决办法:
<!--
//int : 取得输入字符串的宽度
function getStrWidth(str)
{
var w = 0;
var id = 'check_new_line_span_leonny';
var s = document.getElementById(id);
s.innerHTML = str;
s.style.display = '';
w = s.scrollWidth;
s.style.display = 'none';
return w;
}
//-->
</script>
<br />
<input type="button" value="Get Text Width" onclick="alert(getStrWidth(document.getElementById('text1').value));" />
<br />
<span id="check_new_line_span_leonny" style="font-size:12px;font-family:'Palatino linotype';white-space:nowrap;"></span>
不过最后发现, 这个支持英文, 对中文好像不感冒. @_@