Документация - Темы - Создаём простой Parallax эффект в теме сайта

Создаём простой Parallax эффект в теме сайта

В последнее время стал очень популярным параллакс эффект прокрутки страницы. Суть заключается в том, что содержание страницы прокручивается с разной скоростью, создавая ощущение перспективы и следовательно глубины. В этой статье показан основной принцип создания такого эффекта для тем и шаблонов оформления CMS.

Разметка HTML
Для начала нам понадобятся некоторая разметка HTML, содержимое страницы будет помещено в section, а также понадобится еще div, который будет содержать фон.

<div class="bg"></div>

На разметке особо внимание не заостряем, так как она нужна лишь для прокрутки страницы. Переходим к CSS.

Правила CSS
Правил CSS, необходимых для создания эффекта параллакса, на самом деле мало. В первую очередь необходимо установить фоновое изображение в div и зафиксировав, потому что действия прокрутки будут применяться с помощью JQuery. Затем мы устанавливаем ширину 100% и высоту 300%, чтобы div был больше, чем высота страницы. Мы позиционируем его в верхнем левом и, наконец, дать ему Z-индекс -1 убедиться, что она оказывается под текстом.

.bg { background: url('bg.jpg') repeat; position: fixed; width: 100%; height: 300%; top:0; left:0; z-index: -1; }

jQuery
От JQuery мы хотим добиться прокрутки фона на более низкой скорости, чем прокрутка основного контента. Для этого создадим функцию которая будет вызываться во время прокрутки страницы:
function parallax(){
var scrolled = $(window).scrollTop();
$('.bg').css('top',-(scrolled*0.2)+'px');
}

Сначала помещаем в переменную количество пикселей прокрутки от начала страницы. Теперь, чтобы сделать прокрутку фона с меньшей скоростью, добавляем к свойству top блока div значение переменной умноженное на коэффициент (чем ближе к 0 тем медленнее).

И последний штрих, эта функция вызывается во время прокрутки страницы.

$(window).scroll(function(e){
  parallax();
});

Добавляем кнопки вниз-вверх
<script>
&#036;(window).scroll(function(e){
parallax(); }); function parallax(){ var scrolled = $(window).scrollTop(); $('.bg').css('top',-(scrolled*0.2)+'px'); } </script> <a style='position: fixed; bottom: 60px; right: 1px; cursor:pointer; display:none;' href='#' id='Go_Top'> <img src="templates/simple/images/parallax/go_up.png" alt="UP" title="Up"> </a> <a style='position: fixed; bottom: 15px; right: 1px; cursor:pointer; display:none;' href='#' id='Go_Bottom'> <img src="templates/simple/images/parallax/go_down.png" alt="Down" title="Down"> </a>

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

5

Комментарии

Нет комментариев. Почему бы Вам не оставить свой?

Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.

Хотите опробовать SLAED CMS в действии?
Идеи и предложения
Обратная связь
Подтверждение

Поделиться
QR-код

Предварительный просмотр