2014-01-07 3 views
0

вот простой HTML пример:получить высоту DIV на основе других DIVS высот

<div id="column-5" style="height:300px;width:200px;background:red"> 
<div class="httwitter-thread-navigation" style="height:223px;width:100%;background:pink"> 
    <div class="mydiv" style="width:auto;background:yellow;"></div> 
</div> 

то, что я хочу, чтобы достичь дает высоту, чтобы .mydiv на основе следующей операции: высота .mydiv должна быть "# КОЛОННА-5 высота" - "высота .httwitter-Thread-навигация по - 40px"

, который переводит в этом случае в

300 - 223 - 40 = 37px

Как получить высоту 37px с javascript?

считают, что высота колонны-5 или другой не может быть указан в CSS, поэтому Javascript должен обнаружить это innerHeights (в том числе полей и отступов)

благодарю вас так много

скрипку здесь: высота http://jsfiddle.net/omegaiori/hafn5/1/

ответ

2

.mydiv должно быть "# колонна-5 высота" - "высота .httwitter-нить-навигация по - 40px"

это почти суммирует его?

$('.mydiv').height(function() { 
    return $('#column-5').height() - $('.httwitter-thread-navigation').height() - 40; 
}); 

FIDDLE

JQuery имеет как outerHeight и innerHeight, а также, в зависимости от того, что вам нужно. Прочтите документы.

+0

это правильно RIGH? http://jsfiddle.net/omegaiori/hafn5/3/ – valerio0999

+0

@omegaiori - если innerHeight - это то, что вам нужно, да. И ваша скрипка, и одна в ответе задают высоту 37px – adeneo

1

здесь вы идете:

$(document).ready(function() { 

    $('.mydiv').css('height', ($('#column-5').height() - $('.httwitter-thread-navigation').height() - 40); 

}); 
Смежные вопросы