2015-10-22 5 views
0

Я получил HTML-код так:Как добавить определенную высоту элемента к другому

<section> 
    <div> 
    </div> 
</section> 
<section> 
    <div> 
    </div> 
<section> 

У меня нет определенной высоты любого элемента. И я хочу сделать это, чтобы получить высоту раздела и дать его внутренней высоте. Как я могу сделать это с помощью jQuery?

Я уже судимое что-то вроде этого:

$(document).ready(function() { 
    var contentHeight = $('.content').parent().height(); 
    $(".content").height(contentHeight); 
}); 

$(window).resize(function() { 
    var contentHeight = $('.content').parent().height(); 
    $(".content").height(contentHeight); 
}); 

но он принимает только высоту первой секции, а затем применить его ко всем внутренним дивы.

+0

Добавить '.content {height: 100%; } 'в CSS – Tushar

+0

Можете ли вы представить какой-либо пример, где ваше ожидаемое поведение было бы полезно, потому что, честно говоря, я не вижу ни одного на данный момент. И если вы измените высоту контента, в зависимости от поля/заполнения, он изменит родительскую высоту, так что вы ожидаете в этом случае ??? –

ответ

1

В вашем $(window).resize разделе, замените код с этим:

$(window).resize(function() { 
    $(".content").each(function(){ 
     $(this).css('height', $(this).parent().height()+'px'); 
    }); 
}); 

Причиной, по которой первый ".content" влияет только, что ваш $('.content') возвращает массива совпадающих элементов, но только .height() части возвращает первый элемент этого массива. Раствором является итерация через всего набор элементов ".content" с использованием .each(function(){...})

+0

.each был тем, что я искал :) Большое спасибо :) – torm

+0

Тогда, принимая мой ответ, нужно правильно :-) –

+1

В качестве побочного примечания вам действительно не нужны 'each',' css() 'метод может использоваться для цикла, используя параметр функции:' $ (". content"). css ('height', function() { return $ (this) .parent(). height(); }); «Но опять же, я не вижу никакой соответствующей цели для этого –

Смежные вопросы