5

これは、Jquery の経験が豊富な人にとっては非常に簡単な質問だと思います。

たとえば、いくつかの div を持つ単純な html ページがあり、そのうちの 3 つには同じ css クラス「サイドバー」があります。

この「サイドバー」div のそれぞれは、異なるコンテンツと異なる高さを持っています。

この div の高さを比較して、最も長いものを見つける必要があります。

比較を実現する方法は知っていますが、Jquery でこの各 div を取得する方法がわかりません

それらの値を変数または配列に格納します。

4

3 に答える 3

13

これまでに投稿された2つの回答が、直接jQuery.each()呼び出すのではなく使用している理由がわからないので、次のことをお勧めします。each()

$('#elementID').siblings().each(function ()
{
    var height = $(this).height();
});

各高さを配列に入れるには:

var heights = [];
$('#elementID').siblings().each(function ()
{
   heights.push($(this).height());
});

または、次を使用しますmap()

var heights = $('#elementID').siblings().map(function ()
{
   return $(this).height();
}).get();
于 2010-07-16T04:09:19.723 に答える
5
$.each($('.sidebar'), function() {
    var height = $(this).height();
});
于 2010-07-16T04:05:33.333 に答える
0

私が同じことをしなければならなかったとき、これは私が使用したコードです:

    var tabPanels = $("...");
    var maxHeight = 0;

    $.each(tabPanels, function() {
        var height = $(this).height();
        maxHeight = (height > maxHeight) ? height: maxHeight;
    });

    $.each(tabPanels, function() {
        $(this).css("height", maxHeight + "px");
    });
于 2010-07-16T04:02:13.230 に答える