Может я несколько недопонял ваш код, но судя по всему он делает тоже самое что и мой:
1. назначает window.onResize
2. вешает таймер
3. по таймеру запускает функцию
Верно?
А этот участок я не понял:
if (timer){
clearTimeout(timer);
}
У меня почти тоже самое, но как то попримитивнее, таймер я встроил в саму функцию:
$(document).ready(function(){
$(window).resize(fix_page);
fix_page();
});
function fix_page(){
// тут код функции, примитивный расчёт
setTimeout("fix_page()", 1000); // рекурсия
}
Вроде работает, но это как то "костыльно", что-ли...
Возник ещё 1 вопрос. setTimeout "выходит" из функции или переполняет стек до вылета браузера?)
Ах да. кажется ваш код срабатывает только при onResize окна...
у меня сложность заключается как раз в том, что я не могу отследить onResize блока. Блок хоть и большой, но не всегда при его растягивании или стягивании срабатывает onResize() окна.