Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Фиксированный блок неверно 'отлипает' (https://javascript.ru/forum/dom-window/61339-fiksirovannyjj-blok-neverno-%27otlipaet%27.html)

BoJITyH 13.02.2016 21:20

Фиксированный блок неверно 'отлипает'
 
Приветствую. Есть проблема:
На сайте реализован плавающий блок, следующий за экраном. Он начинает движение (отлипает) как только верхняя граница экрана становится ниже границы родительского блока.
Проблема состоит в том, что если граница родительского блока сдвигается (например, при сворачивании\разворачиван и блоков над ним), то и сам блок уезжает на соответственное расстояние. Как этим можно бороться (чтобы блок отлипал всегда от верхней границы родительского элемента, даже если она изменяется)
Код
HTML:
<td valign='top' width='30%' style='position: relative; min-width:470px; max-width: 510px;'>
<div style='height: 88vh; overflow:auto;' id='fixed' >
содержимое блока
</div>
</td>

JQuery:
var fixed = $("#fixed");
var offset = fixed.offset();
$(window).scroll(function() {
if ($(window).scrollTop() > offset.top) {
fixed.stop().animate({marginTop: $(window).scrollTop() - offset.top + 90});
} else {
fixed.stop().animate({marginTop: 0});
};
});


Часовой пояс GMT +3, время: 10:28.