0

ボックスの高さ(私の例では黄色の背景)を動的に取得したい-その内容の長さに応じて。したがって、テキストが長い場合は、高さが高くなります。そして、この黄色のボックスには親コンテナがあります(私の例では青い背景)。

私が理解していないのは、なぜそれらが同じ高さを持っているのかということです-それは100

青いボックスは、上部20pxパディングと下部20pxのパディングがあるため、数値が大きくなるはずです。したがって、黄色のボックスが100の場合、青いボックスは140になります。

jquery、

// Set the object.
var object = $(".box");
//var object_height = parseInt(object.css('min-height'),10) || parseInt(object.css('height'),10);
var object_height = object.height();

var scrollable = $(".scrollable");
//var scrollable_height = parseInt(scrollable.css('min-height'),10) || parseInt(scrollable.css('height'),10);
var scrollable_height = scrollable.height();

alert(object_height);
alert(scrollable_height);

html、

<div class="box">

    <div class="scrollable">
        <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
    </div>

</div>

jsfiddleからのリンク。

これを正しくする方法はありますか?

4

3 に答える 3

1

メソッドを使用できますouterHeight()

パディング、境界線、オプションでマージンなど、一致した要素のセットの最初の要素について現在計算されている高さを取得します。値の整数(「px」なし)表現を返します。空の要素セットで呼び出された場合はnullを返します。

object.outerHeight()

http://jsfiddle.net/GMtBa/

于 2012-09-23T00:28:50.763 に答える
1

outerHeight()適切な高さの値を取得するために使用する必要があります。

// Set the object.
var object = $(".box");
var object_height = object.outerHeight();

var scrollable = $(".scrollable");
var scrollable_height = scrollable.outerHeight();

alert(object_height);
alert(scrollable_height);
于 2012-09-23T00:30:13.940 に答える
1

あなたはouterHeight()方法を使うべきです、それは高さ+マージン/パディングを計算します

于 2012-09-23T00:30:45.217 に答える