Этот яваскрипт, работающий на фреймворке jQuery при прокрутке содержимого окна браузера выводящий внизу страницы появляющееся сбоку окошко, является довольно универсальным, поскольку в выводимый скриптом блок можно поместить практически что угодно: контекстную рекламму, тизеры, баннеры, список похожих или популярных записей, а также призыв добавить страницу в закладки или подписаться на обновления блога или сайта.
Необходимым и обязательным условием для работы скрипта является подключенный к сайту фреймворк jQuery, о том как он подключается я вам уже рассказывал ранее.
Скрипт всплывающего сообщения в окне
Принцип работы jQuery скрипта заключается в том, что им отслеживается положение на странице, определенного в его коде, с уникальным id или классом блока. Как только этот блок с содержимым при прокрутке страницы вниз проходит отметку середины окна браузера пользователя, скриптом с левой или правой стороны выводится окошко с тем содержимым или сообщением которое вы желаете показать.
Все настройки положения выдвигающегося окна, его высоты, ширины и т. д. производятся в самом javascript (скрипте) или css стилях назначенных всплывающему блоку.
Код скрипта (javascript)
(function ($) {
$(function () {
var $sideroll = $("#sideroll"), // айди блока который будет появляться
$watch_block = $("#content"), // айди блока положение которого отслеживается
enabled = true,
hide_offset = 5,
outer_margin = 10,
shown = false,
show = function() {
if(shown) return;
shown = true;
$sideroll.stop().animate({right: -hide_offset}, 300);
},
hide = function() {
if(!shown) return;
shown = false;
$sideroll.stop().animate({right: -$sideroll.outerWidth()-outer_margin}, 300);
},
disable = function(e) {
e.preventDefault();
enabled = false;
hide();
},
onscroll = function() {
if(!enabled) return;
var viewport_bottom = $(window).scrollTop() + $(window).height(),
block_bottom = $watch_block.offset().top + $watch_block.outerHeight();
if(viewport_bottom > block_bottom)
show()
else
hide();
};
$(«.roll-close», $sideroll).click(disable);
$(window).scroll(onscroll).resize(onscroll);
})
})(jQuery);
HTML код
<script src="/sideroll.js" type="text/javascript"></script>
<div id="sideroll">
<span class="roll-close">X</span>
<h4>Заголовок сообщения</h4>
Текст сообщения, контекстная реклама и прочее...
</div>
Данный html код желательно вставить в самый конец кода страницы перед загрузкой футера, не забудьте указать полный путь до файла скрипта.
CSS стили
#siderol {
position: fixed;
top: expression(document.getElementsByTagName("body")[0].scrollTop + "px");
overflow: hidden;
bottom: 20px; /*Расстояние до нижнего края окна*/
right: -100%; /*Появляется справа, чтобы поменять сторону замените на: left */
width: 240px; /*Ширина выезжающего блока*/
z-index: 99999;
background: #fff;
font-size: 11px;
line-height:1.4em;
border: 1px solid #ebebeb;
border-radius: 7px;
padding: 10px 15px 10px 10px; /*Отступы от краев до текста*/
min-height: 100px;
-webkit-box-shadow: 0 0 16px rgba(0,0,0,0.5);
-moz-box-shadow: 0 0 16px rgba(0,0,0,0.5);
box-shadow: 0 0 16px rgba(0,0,0,0.5);
}
#siderol .roll-close {
display: block;
position: absolute;
width: 15px;
height: 15px;
top: 10px;
left: 10px;
cursor: pointer;
font-weight: bold;
font-size: 15px;
text-shadow: #000 0px 0px 1px;
}
#siderol h4{font-size:18px;margin:0 0 10px;}
Конечно для каждого конкретного сайта и под каждый дизайн в скрипт, код и стили потребуется вносить изменения, без них я вам корректную работу скрипта не гарантирую. Прежде чем устанавливать его на реально действующий сайт, во избежание его поломки настоятельно советую потренироваться с его настройкой на локалке (установив денвер).
Также прошу не обращаться (в массовом порядке), за помощью в его настройке и установке на сайт, поскольку к моему сожалению всем помочь я все-равно ввиду нехватки времени не смогу.
На момент публикации статьи вы можете посмотреть скрипт в работе прямо на моем блоге, прокрутив любую из страниц вниз, как долго он будет стоять пока не знаю.
Читайте также:
- Кроссбраузерный text-shadow эффект с помощью CSS
- Текущая дата и время на сайте — php скрипт даты
- Секреты дивовой верстки без хаков
- Сочетаемые и несочетаемые цвета в одежде, интерьере и дизайне сайтов
- Оптимизация изображений (картинок и фотографий) сайта
- Возможности и недостатки разметки HTML5 для создания web сайтов
- Дизайн который надеюсь понравится Google и Яндексу
- Выделение текста в Skype и теги HTML в чате Скайпа
- Ссылки из футера опасны для разработчиков шаблонов WordPress
- Красивые сниппеты сайтов в поиске Google