3 つ.items_rowの div があり、それぞれに 4 が含まれ、.itemそれぞれ.itemに.item_img. 次のスクリプトを使用して、.item_imgeach.itemのそれぞれで最も高いものを見つけ、最も高い高さからそれぞれの最も短い高さを引いた.items_row最も短いものに下マージンを追加します。.item_img
$('.items_row').each(function(){
var tallestimg = -1;
$(this).children().each(function() {
$(this).find('.item_img').each(function(i) {
tallestimg = $(this).height() > tallestimg ? $(this).height() : tallestimg;
if ($(this).height() < tallestimg) {
$(this).css({ 'margin-bottom': tallestimg - $(this).height() });
}
});
});
});
スクリプトは私が望むとおりに機能しますが、最も高い.item_imgdivが最初の.itemdivにない場合、最短のdivはまったく取得margin-bottomされません。たとえば、最も高い.item_imgdiv が の 2 番目.itemにある.items_row場合、その.item_img前の . は無視されmargin-bottomます。何か案は?