@Synthua

Как отображать элемент при скролле и скрывать его за N пикселей до появления конца страницы?

На данный момент фиксированный элемент отображается при скролле вот этим кодом:

$(document).ready(function() {
  $(window).scroll(function() {
    if ( $(this).scrollTop() > 600 ) {
      $('#widget').fadeIn('fast');
    } else {
      $('#widget').fadeOut('fast');
    }
  });
});


Мне нужно, чтобы элемент скрывался за N пикселей до конца страницы, либо же до появления во вьюпорте footer'a.
И если после скрытия (внизу страницы) начать скроллить вверх - элемент должен появляться снова.
Подскажите, пожалуйста, как решить задачу?

Добавил демо
  • Вопрос задан
  • 945 просмотров
Решения вопроса 1
KickeRocK
@KickeRocK
FrontFinish
600 - это что?
Правильно, скопированный и не понятый код.
if ( $(this).scrollTop() > 600 ){...}
превращается...превращается в... элегантное условие

var pixelN = 100;
if ( $(this).scrollTop() > $(this).height() - $('footer').height() - pixelN){...}

var pixelN = 100; -
Значение
за N пикселей до конца страницы
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
23 нояб. 2024, в 01:31
1000 руб./за проект
23 нояб. 2024, в 00:16
2000 руб./за проект
22 нояб. 2024, в 23:55
3000 руб./за проект