11

私はこのhtml構造を持っています:

<div class=container>
    <div class=content>
            Content goes here
    </div>
</div>

私はdiv.contentの高さを読んでいます:

var height = $("div.content").height();

17 を返します (私のテストケースでは)

これまでのところうまく機能します(firebugを使用して実際の高さと比較すると)。問題は、連続したテキストを 2 行以上入力すると、間違った値が得られることです。2 行で 34 (正しい) が返されますが、実際の高さは 51 ですが、3 行でも 34 が返されます。もちろん、大量のテキストを入力すると、結果の値はすべて間違っています。私にはjqueryのバグのようです..回避策のアイデアはありますか? ありがとう

ps: IE では完璧に動作しますが、firefox は間違った値を返します..

4

1 に答える 1

37

$("div.content").outerHeight();代わりに使用してください。

すべての余白とパディングも含めたい場合は、括弧内に-true-を追加します。 $('div.content').outerHeight(true);

また、 CSSリセットがあまり適切でない場合、または従来のブラウザー(ie6 / 7)を使用している場合は、ブラウザー間の高さが異なる場合がありますが、リセットが適切であれば、その違いはごくわずかです。

jsFiddleデモ

于 2012-08-29T18:21:48.830 に答える