Не срабатывает условие
var sidebar = document.getElementById("sidebar"); var content = document.getElementById("content"); var sh = sidebar.offsetHeight; var ch = content.offsetHeight; if (sh>ch) { $('#content').height(sh); } Подскажите пожалуйста, почему не срабатывает условие? Без условия нормально подставляется. |
Цитата:
|
Я думал может быть сам где то ошибся, но видимо нет.
Когда меняю ch>sh и задаю height для #sidebar все работает. Но нужно делать именно так |
Цитата:
alert( sh > ch ? "Да":"Ошибка" ) и узри! |
Узрел "ДА", но высота блока не равняется =(
Для ясности может кто-нибудь поможет http://vg-travels.ru/russia/6 Блок #content должен вытянуться во всю высоту. |
если в буле true, то высота виновата! она 118 равна ( ch ), а sh ~ 500
$(function(){ $('#content').height(document.getElementById("sidebar").offsetHeight) }) при ПОЛНОЙ загрузке страницы это надо делать |
$(document).ready(function(){ $('ul.menu').removeClass(); $('#nav>ul').find('ul').parent().each(function(i){ $(this).hover(function(e){ var $targetul=$(this).children('ul') if ($targetul.queue().length<=1) $targetul.slideDown(300) }, function(e){ $(this).children('ul').slideUp(200) } ); }); $('#print a.print').click(function() { $(this).parent().find('.tooltip').fadeIn(300); return false; }); $('#print .tooltip a.button').click(function() { $(this).parent().fadeOut(300); }); $('.term-info').find('.item').css('display', 'none'); $('.term-info').find('a').click(function() { $('#item-0').slideToggle(2000); return false; }); var sh = document.getElementById("sidebar").offsetHeight; var ch = document.getElementById("content").offsetHeight; if(sh>ch) { $('#content').height(sh); } }); Вот полный скрипт, тут еще всякая фигня делается. Думал виновата высота ch или sh, поэтому пробовал округлять до целого, тоже не помогло. Попробовал проверить заполняются ли переменные с помощью alert(sh); alert(ch); Передаются адекватные целые значения. |
Сравните:
<div style="background-color:#FF0000;" height="300px">12345</div> <br>и<br> <div style="background-color:#FF0000; height:300px">12345</div> Попробуйте попроще написать свой код и менять высоту не атрибута объекта, а высоту в его стиле: document.getElementById("content").style.height=300; |
Маэстро, нужно указывать единицы измерения... Например
document.getElementById("content").style.height='300px'; |
Цитата:
покажете где это не сработает? ;) |
Часовой пояс GMT +3, время: 21:55. |