У меня есть следующая функция, в которой у меня есть три столбца. Javascript должен найти самый большой столбец и установить высоту других столбцов на эту высоту.jquery height() метод возвращает строку-высоту
$(document).ajaxComplete(function(){
function fixScheduleHeights(){
content1 = $('.schedule_content_holder').first();
content2 = content1.next();
content3 = content2.next();
content1Height = content1.height();
content2Height = content2.height();
content3Height = content3.height();
biggestScheduleHeight = Math.max(content1Height, content2Height, content3Height);
$('.schedule_content_holder').height(biggestScheduleHeight);
}
fixScheduleHeights();
});
Я пробовал код выше, и он работает, если самый большой столбец - это первый столбец. он не работает, если самый длинный столбец - второй столбец. Я поставил следующий код в целях отладки:
alert(content2height);
и насторожило значение 16, которое не должно быть значение content2height. Посмотрев инспектор, я понял, что проблема в том, что тело имеет свойство css строки-высоты: 16 пикселей;
Почему Content2Height = 16 и как его изменить так, чтобы он был равен фактической высоте?
является '.schedule_content_holder' встроенным элементом? –
'height()' не возвращает высоту строки, поэтому, если он говорит 16px, это 16px. Также обратите внимание, что все ваши переменные глобальны. – adeneo
почти похоже на содержимое, которое предназначено для загрузки, не загружено. – Huangism