Javascript 我们如何计算任何文本的宽度
我有一个div中的文本。我可以输出div的宽度,如下所示Javascript 我们如何计算任何文本的宽度,javascript,html,css,Javascript,Html,Css,我有一个div中的文本。我可以输出div的宽度,如下所示 alert($("div").width()); 但我感兴趣的是获取其中文本的宽度,不包括边框或填充空间。如果我将字体系列指定为arial或verdana,则文本占用的空间将不同。所以我想知道文本的宽度是多少 谢谢我在文本周围设置了一个span元素,得到了我想要的东西 这是代码- 使用innerWidth()并减去填充 alert($("div").innerWidth()-($("div").css("padding").repl
alert($("div").width());
但我感兴趣的是获取其中文本的宽度,不包括边框或填充空间。如果我将字体系列指定为arial或verdana,则文本占用的空间将不同。所以我想知道文本的宽度是多少
谢谢我在文本周围设置了一个span元素,得到了我想要的东西
这是代码-
使用innerWidth()
并减去填充
alert($("div").innerWidth()-($("div").css("padding").replace("px","")*2));
这里有一些文本
$(函数(){
var div2=$('#div').clone();
第2部分:addClass(“for-calc”);
$('body')。追加(div2);
$('.for calc').html('+$('.for calc').html()+'');
变量宽度=$('.for calc>span').width();
$('.for calc').remove();
警报(宽度);
});
变量width包含来自div#div的文本宽度尝试将边距和填充设置为0,并设置display:inline
<div id="div">Some text here</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
var div2 = $('#div').clone();
div2.addClass('for-calc');
$('body').append(div2);
$('.for-calc').html('<span style="display:inline; padding:0">' + $('.for-calc').html() + '</span>');
var width = $('.for-calc > span').width();
$('.for-calc').remove();
alert(width);
});
</script>