Плавающая колонка скачет в браузерах, в которых нет плавного скроллинга. Хром, Опера. В FF нормально.
Сама функция:
function leftSideScroll(){
var elem = $('.description_catalog_inner');
var brand = $('.brand_inform');
var brandHeight = brand.height();
if(elem.length){
if(brand.length !=0){
var parBottom = elem.parent().parent().offset().top + brandHeight;
} else {
var parBottom = elem.parent().parent().offset().top;
}
var parTop = parBottom + elem.parent().parent().height() - 40;
var elemBottom = elem.offset().top;
var elemTop = elemBottom + elem.height();
var height = elem.height();
var winBottom = $(window).scrollTop() + 70;
var winTop = winBottom + $(window).height() - 70;
var newTop = elemBottom;
if((height < elem.parent().parent().height())){
if(height > $(window).height()){
if(newTop > winBottom){
newTop = winBottom;
}
if(newTop + height < winTop){
newTop = winTop - height;
}
if(newTop < parBottom){
newTop = parBottom;
}
if(newTop + height > parTop){
newTop = parTop - height;
}
} else {
newTop = winBottom;
if(newTop + height > parTop){
newTop = parTop - height;
}
if(newTop < parBottom){
newTop = parBottom;
}
}
elem.offset({"top": newTop});
}
}
}
Инициация по event scroll.
Ссылка на пример. Левая колонка.
В чем может быть проблема? Уже мозги закипают. Хотя бы носом ткните куда копать.