MonkIncr
@MonkIncr

Как на jQuery сделать плавающий DIV, появляющийся после прокрутки последнего DIV в боковой колонке и докручивающийся при появлении подвала страницы?

Пример - habrahabr.ru - Блок "Популярные за сутки"
  • Вопрос задан
  • 7515 просмотров
Решения вопроса 3
Пригласить эксперта
Ответы на вопрос 2
iiil
@iiil
Инженер и вэб-дизайнер, рисую.
Как вариант, считаете отступ последнего блока от верха, прибавляете к нему высоту блока. Сравниваете при scroll с scrollTop и если больше или равно - задаете класс нужному блоку с position:fixed. Не забывая при этом, что если блок вытаскивается из потока, его надо заменить margin-top следующего за ним блока на величину, равную высоте блока.
Соответственно, при определенном scrollTop надо его скрывать, чтобы он не залез на футер. Можно сделать просто, если блок не большой высоты, то просто следить, чтобы scrollTop не был равен scrollHeight.
Все это можно написать за 10 минут, если у Вас есть знания.
Ответ написан
olexandrbig
@olexandrbig
Здравствуйте, Пример с использованием Bootstrap

$('#my-affix').affix({
    offset: {
      top: 100, bottom: function () {
        return (this.bottom = $('.footer').outerHeight(true))
      }
    }
  })


ещё нужно 3 сроки чтобы оно заработало :)

<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>


Учитывайте что для запуска с файла а не с нужно перед //добавить http:

Подробно тут
Ответ написан
Ваш ответ на вопрос

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

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