$(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);
Передаются адекватные целые значения.