вопрос
Скрипт служит для создания плавающего блока на сайте. По дефолту все работает отлично, но вот только когда плавающий блок достигает футера, он его начинает сдвигать до бесконечности вниз. Хотелось бы это как-то устранить
<script type="text/javascript">
$(function() {
var offset = $("#fixed").offset();
var topPadding = 15;
$(window).scroll(function() {
if ($(window).scrollTop() > offset.top) {
$("#fixed").stop().animate({marginTop: $(window).scrollTop() - offset.top + topPadding});
}
else {$("#fixed").stop().animate({marginTop: 0});};});
});
</script>
$(window).load(function() {
var fixed = $("#fixed"),
fixedTop = fixed.offset().top,
fixedHeight = fixed.outerHeight(),
footer = $("#footer"),
footerTop = footer.offset().top;
$(window).scroll(function() {
var a=$(window).scrollTop();
a > fixedTop && fixed.addClass("active");
a < fixedTop && fixed.removeClass("active");
a > footerTop - fixedHeight && fixed.addClass("stop");
a < footerTop - fixedHeight && fixed.removeClass("stop");
});
});
#fixed { position: relative; }
#fixed.active { position: fixed; top: 0; bottom: auto; }
#fixed.active.stop { position: absolute; top: auto; bottom: 0; }
Живой пример тык