@aviaciaflyok

Остановка плавающего блока перед футером?

Нашел скрипт который нормально скроллит до футера, но вот обратно при прокрутке вверх позишин факсед не добавляется.
function checkOffset() {
if($('#social-float').offset().top + $('#social-float').height()
>= $('#footer').offset().top - 10)
$('#social-float').css('position', 'absolute');
if($(document).scrollTop() + window.innerHeight < $('#footer').offset().top)
$('#social-float').css('position', 'fixed'); // restore when you scroll up
$('#social-float').text($(document).scrollTop() + window.innerHeight);
}
$(document).scroll(function() {
checkOffset();
});

это скрипт
  • Вопрос задан
  • 493 просмотра
Пригласить эксперта
Ответы на вопрос 1
@Codebaker
Всё умею, всё могу!
function checkOffset() {
  var padding = 10;
  var social_float_height_css_px = 120;
  if($('#social-float').offset().top + $('#social-float').height() >= $('#footer').offset().top - padding)
  {
    $('#social-float').css('position', 'fixed');
    $('#social-float').offset({ top: $('#footer').offset().top - social_float_height_css_px - padding });
  } else {
    $('#social-float').css('position', 'fixed');
    $('#social-float').offset({ top: $(document).scrollTop() + padding });
  }
	$('#social-float').text($(document).scrollTop() + window.innerHeight);
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы