Всплывающий блок на jQuery


Привет всем. Чего-то захотелось мне со своим бложиком поиграться и решил сделать вот такую штуку сверху экрана — как в Яндекс.почте, как на сайте Ильи Бирмана therules.ru. Только как назвать эту панель — не знаю. В общем кому интересно и тоже хочется себе прикрутить — копируйте код, всё просто.

Я пока верхнее меню продублировал, но можно и чего-нибудь другое воткнуть: форму поиска, рекламу и т.п. Вот так оно выглядит сейчас:


В каком порядке вставлять — разницы никакой, начну с js-кода:

$(function () {
    var scroll_timer;
    var displayed = false;
    var $message = $('#messageTop'); // id блока
    var $window = $(window);
    var top = $(document.body).children(0).position().top;
    $window.scroll(function () {
        window.clearTimeout(scroll_timer);
        scroll_timer = window.setTimeout(function () {
            if($window.scrollTop() <= top)
            {
                displayed = false;
                $message.fadeOut(500); // время скрытия блока
            }
            else if(displayed == false)
            {
                displayed = true;
                $message.stop(true, true).show().click(function () { $message.fadeOut(500); });
            }
        }, 100);
    });
});

Стили:

#messageTop
{
    display: block;
    display: none;
    z-index: 999; 
    opacity: .9;
    position: fixed;
    left: 50%; /* = центрируем блок */
    margin-left: -520px; /* = половина ширины блока */
    width: 1040px;
    height: 50px;
    background-color: #fff
}

Сам блок:

<div id="messageTop">Сюда пихаете всё, что вам нужно</div>

Так же пример можно использовать для появления кнопки «Наверх». Ну пролистнули вниз страницы, а тут она такая появляется :)

Кстати, во всяких ишаках толком не проверял даже, лень просто. Если что — пинайте меня, подкручу чего-нибудь.

Добавлено: 14.04.2011    Просмотров: 2386    Метки: jQuery, скрипт
Написал(а): Максим Софронов, 14.04.2011 в 15:10
Я думаю в твоем случае можно было сделать просто стилями: «position: fixed;»
Написал(а): Orlenko K.N., 14.04.2011 в 15:14
В моём — можно, но я пока так поставил, потому что ничего другого не придумал… Вполне возможно, что с бОльшей пользой можно будет задействовать…
Написал(а): Тарас, 25.08.2011 в 14:40
А fadeToggle вместо кучи Инди-кода не пробовали ?)
Написал(а): Эмиль, 11.11.2011 в 16:05
только в IE у меня не работает, хорошая штука! на подобии яндекс поиска
Написал(а): Orlenko K.N., 11.11.2011 в 21:40
Да в ж*пу Ишака, надоел он уже…
Написал(а): !!!, 20.11.2011 в 10:01
Привет! А как можно сделать чтобы при скролинге напримерна 500px появлялся блок?

 
   
 
 

Последняя работа

Торговый дом «Зелёная линия»

Шаблон

HTML-шаблон Ваш бизнес

Статистика


Сегодня: 22 мая 2012 г.
  Постов на блоге: 147
  Оставлено комментариев: 937
  Шаблонов в базе: 223
  Выполнено работ: 40
Все комментарии
Загрузка: 0.021

Яндекс.Метрика