1

divにテキストがあります。divの幅は次のように出力できます

alert($("div").width());

しかし、境界線やパディングスペースを除いたテキストの幅を取得することに興味があります。arialまたはverdanaとして指定するfont-familyと、テキストが占めるスペースが異なります。だから私はテキストだけの幅がどのようになっているのか知りたいです。

ありがとう

4

3 に答える 3

1

テキストの周りにスパン要素を設定すると、まさに私が望んでいたものが得られました。

ここにコードがあります -

http://jsbin.com/oduvan/edit#javascript,html

于 2012-07-17T07:16:31.303 に答える
1

デモ

パディングの使用innerWidth()と減算

 alert($("div").innerWidth()-($("div").css("padding").replace("px","")*2));
于 2012-07-17T07:17:28.813 に答える
1
    <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>

可変には、div#div からのテキストの幅が含まれます

于 2012-07-17T07:53:34.983 に答える