我正在自动调整文本字体大小,它工作正常,但我也想计算文本长度。但我的错误长度。这是Fiddler代码。有人可以告诉我这里我做错了吗?
var len=$(targetid).text().length;
alert(len);
我正在使用text().length
方法,但我的错误值。
$('.jtextfill').textfill({ maxFontPixels: 36 },'h1');
$('.jtextfill2').textfill({ maxFontPixels: 36 },'h2');
$('.jtextfill3').textfill({ maxFontPixels: 36 },'h3');
答案 0 :(得分:0)
答案 1 :(得分:0)
我认为你遇到的问题是它也在计算空间,你应该在读取长度之前修剪文本。
$($(targetid).text()).trim().length
答案 2 :(得分:0)
这是因为.text()
包含围绕span
元素的.jtextfill
元素的空白。
<h1 id="h1" class='jtextfill'><span>Sample1</span></h1>
<h2 id="h2" class='jtextfill2'><span>Sample2</span></h2>
<h3 id="h3" class='jtextfill3'><span>Sample3</span></h3>
$.trim
空白(JSFiddle):var len = $.trim($(targetid).text()).length;
现代浏览器替代方案:
var len = $(targetid).text().trim().length;
答案 3 :(得分:0)
text()方法返回h1,h2和h3标记内的文本,以及它们周围的空格和换行符。
在测试长度之前,您需要确保修剪():
var len=$(targetid).text().trim().length;