2016-02-04 2 views
1

Я новичок в javascript. он работает отлично, если мы обновляем страницу, но не работаем при изменении размера окна.такая же высота нескольких li в javascript

$(window).load(function(){ 
    equl_height(); 
}); 

$(window).resize(function(){ 
    equl_height(); 
}); 


function equl_height() { 
    var highestBox = 0; 
    $('ul li').each(function(){ 
     if($(this).height() > highestBox){ 
      highestBox = $(this).height(); 
     } 
    });  
    $('ul li').height(highestBox); 
} 
+0

Можете ли вы поделиться скрипкой http://jsfiddle.net? или поместить консольный журнал в метод 'equl_height', чтобы проверить, выполняется ли этот метод или нет? – gurvinder372

ответ

0

window.addEventListener("resize", equl_heigh);

ура!

+0

Почему вы положили «equl_heigh» как строку? И почему бы addEventListener работать, если код jquery не сделал? – nnnnnn

+0

hello jimish не работает $ (window) .load (function() { equl_height(); }); window.addEventListener ("resize", "equl_height"); function equl_height() { var высшийBox = 0; . $ ('UL LI') каждый (функция() { , если ($ (это) .height()> highestBox) { highestBox = $ (это) .height();} }); $ ('ul li'). Высота (наивысшийBox); } –

+0

Ответ обновлен. не ставьте 'equl_heigh' как строку –

0

Проблема в том, как вы измеряете высоту li. используйте scrollHeight вместо height(). Проверьте это fiddle.

Обновить ваш equl_height метод с

function equl_height() { 
    console.log("resizing"); 
    var highestBox = 0; 
    $('ul li').each(function(){ 
     //var height = $(this).outerHeight(); 
     var height = $(this)[0].scrollHeight; 
     if(height > highestBox){ 
      highestBox = height; 
     } 
    });  
    $('ul li').outerHeight(highestBox); 
} 

Кроме того, поскольку изменение размера событие может быть уволен с более высокой скоростью, чтобы попробовать это throttling trick, а также.

+0

* «не переопределять функцию window.onresize» * - код (в настоящее время), указанный в вопросе, не использует onresize, он использует соответствующий метод jquery. – nnnnnn

+0

@nnnnnn да, мой плохой. Спасибо за указание – gurvinder372

+0

@ gurvinder372 спасибо большое его рабочий штраф –

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