Автор

Баннер для сайта с эффектом параллакса на JS

Баннер для сайта с эффектом параллакса на JS


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

 

ДЕМО
ИСХОДНИКИ

 

У нас будет несколько слоев изображений, каждый из которых будет двигаться с различной скоростью при манипуляции мышкой, это будет создавать эффект объемности. И так, давайте рассмотрим основные аспекты.

Шаг 1. HTML

Для начала нам необходимо вывести все слоя для отображения, для этого у нас есть следующие параметры:

 <div class='banner'>
 <div id="parallxWrapper">
 <div class="parallxBackground" data-bind="attr: { style:'-webkit-transform:perspective(1000px) rotateY(' + relativeMouse.x() + 'deg) rotateX(' + relativeMouse.y() + 'deg);transform:perspective(1000px) rotateY(' + relativeMouse.x() + 'deg) rotateX(' + relativeMouse.y() + 'deg)' }">
 <div class="parallxLayerLogo"></div>
 <div class="parallxLayerRStar"></div>
 <div class="parallxLayerShooter"></div>
 </div>
 </div>
 </div>

Кроме этого мы устанавливаем параметры для баннера, чтобы ориентировать его в пространстве.

Шаг 2. CSS

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

html { height:100%; }
body {
min-height: 100%;
height: auto !important;
margin:0px;
}
.banner {
background-color: black;
}
#parallxWrapper {
margin:auto;
height:540px;
width:1000px;
}
.parallxBackground {
height:100%;
background-image:url("GSqh8aA.jpg");
border-radius:10px;
padding:10px;
-webkit-transform-style: preserve-3d;
transform-style: preserve-3d;
}
.parallxLayerLogo {
width:300px;
height:225px;
margin-top:50px;
margin-left:50px;
background-image:url("9A9KbR8.png");
position:absolute;
-webkit-transform:translateZ(90px);
-webkit-transition: all 0.2s;
transform:translateZ(90px);
transition: all 0.2s;
}
.parallxLayer:hover {
-webkit-transform:scale(1.05);
-webkit-transform:translateZ(30px);
transform:scale(1.05);
transform:translateZ(30px);
cursor:pointer;
}
.parallxLayerRStar{
width:100px;
height:90px;
margin-left:880px;
margin-top:450px;
float:right;
background-image:url("Mh37eRt.png");
position:absolute;
-webkit-transform:translateZ(20px);
transform:translateZ(20px);
}
.parallxLayerShooter{
width:1000px;
height:694px;
float:right;
background-image:url("YWCpfik.png");
position:absolute;
-webkit-transform:translateZ(50px);
transform:translateZ(50px);
}
.parallxLayerRStar:hover {
-webkit-transform:scale(1.05);
-webkit-transform:translateZ(30px);
transform:scale(1.05);
transform:translateZ(30px);
cursor:pointer;
}
h2, .h2 {
font-size: 30px;
}
h1, h2, h3 {
margin-bottom: 10px;
margin-top: 20px;
}
.lead {
font-weight: 200;
line-height: 1.4;
margin-bottom: 20px;
}
body {
color: #333333;
font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
}
.col-md-8 {
min-height: 1px;
padding-left: 15px;
padding-right: 15px;
}

Кроме этого мы установили скорость в миллисекундах для каждого слоя,это позволит двигать одни слоя быстрее, а другие медленно, при этом создается больший эффект присутствия.

Шаг 3. JS

Последний шагом нам необходимо подключить управление курсивом и добавить несколько аспектов анимации для баннера:

var parallx = null;
var demoCount = 0;
 function Parallx() {
 var self = this;
 $("body").mousemove(function(e) {
parallax.mouseX(e.pageX);
 parallax.mouseY(e.pageY);
});
 self.sensitivityMultiplier = ko.observable(0.03);
 self.wrapperOffset = $('#parallxWrapper').offset();
 self.wrapperCenter = {
 x:ko.computed(function() { return self.wrapperOffset.left + ($('#parallxWrapper').width()/2) }, this),
 y:ko.computed(function() { return self.wrapperOffset.top + ($('#parallxWrapper').height()/2) }, this)
 };
 self.mouseX = ko.observable(0);
 self.mouseY = ko.observable(0);
 self.relativeMouse = {
 x:ko.computed(function() { return (self.mouseX() - self.wrapperCenter.x()) * self.sensitivityMultiplier() }, this),
 y:ko.computed(function() { return ((self.mouseY() - self.wrapperCenter.y()) * -1) * self.sensitivityMultiplier()}, this)
 };
 self.origin = {
 x:ko.computed(function() { return ((self.mouseX())/$( window ).width()) * 100 }, this),
 y:ko.computed(function() { return ((self.mouseY())/$( window ).height()) * 100 }, this)
 };
 };
$(document).ready(function() {
 parallax = new Parallx();
 ko.applyBindings(parallax);
setInterval(function() {
 if(demoCount < 130){
 parallax.mouseX(parallax.mouseX() + 10);
 demoCount+=1;
 }
 }, 40);
});

Для данного баннера использовались изображения игры GTA V.

Вот и все. Готово!

Материал взят из зарубежного источника. И представлен исключительно в ознакомительных целях.

Многие материалы на сайте взяты из блогов: "Все для веб-дизайнера Rudebox", "A free library of HTML, CSS, JS nuggets Codyhouse" - полностью переведен и представлен в ознакомительных целях!

vk.com/club.ssdru

Подписывайтесь на нашу группу в контакте vk.com/club.ssdru



Статьи по темеJS

Баннер для сайта с эффектом параллакса на JS

Порой разработчик не особо заморачивается дизайном своего ресурса и приходит к выводу, что будет использовать готовые шаблоны для сайта. Это весьма упрощает жизнь верстальщику, так как приходиться работать с готовым материалом, который уже можно изменить на свое усмотрение не создавая дизайн с нуля. В данном посте мы рассмотрим подборку замечательных, на мой взгляд, готовых шаблонов для сайта, которые вы можете скачать и использовать на свое усмотрение. Уверен, что каждый из посетителей найдет что-нибудь примечательное на свой вкус..

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


Баннер для сайта с эффектом параллакса на JS

Простой шаблон портфолио с изображениями предварительного просмотра проекта, которые выдвигаются, чтобы показать выбранный проект.


Баннер для сайта с эффектом параллакса на JS

В наше время почти на каждом сайте можно увидеть красивые кнопки на сайте, с использованием css. В данном уроке мы рассмотрим подборку замечательных анимированных кнопок для сайта с помощью эффектов css. Возможно вы уже не раз встречали подобные кнопки в интернете, но мы не смогли пройти возле них мимо, и решили рассказать нашим пользователям о них. Идея заключается в создании анимированных ссылок с разными стилями, hover-эффектами и прочими. Также мы будем использовать сторонние шрифты с репозитория google.


Баннер для сайта с эффектом параллакса на JS

Вопрос: почему мало создать сайт и разместить его адрес на POS-материалах?

Я создал сайт, потратил кучу денег на его «раскрутку», разместив везде его адрес. Почему же я до сих пор беден?!

Больной вопрос, который задают многие клиенты. Самое смешное, что они действительно искренне недоумевают, почему же столь успешный (в задумке) проект до сих пор не начинает работать. И главное, что этот клиент не из тех, кто любит строить воздушные замки и воплощать в жизнь свои самые смелые фантазии, а самый, что ни на есть трудоголик, который даже во сне посредством и благодаря своей неутомимости в работе и преданности делу способен вывести свою алхимическую «формулу бизнес-счастья и commerce-изобилия». Итак, возьмем на себя смелость и проведем небольшую работу по «препарированию» (простите за черный юмор) данной проблемы.


Раскрутка в соцсетях

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


Перейти в Блог

Надёжный хостинг

С нами хостинг удобен и прост, как диван у вас дома. Вы с комфортом размещаетесь, а все внутренние пружины мы берем на себя.

Бесплатный тестовый период, ежедневные бэкапы, неограниченный трафик, акции с бонусами... Конечно, у нас все это есть.


Перейти на хостинг

О КОМПАНИИ

Studio Design существует с 2001 года. Основной нашей деятельностью до 2007 года было видеопроизводство ( видеореклама и документальные фильмы, о чем подробно описано в нашем блоге ). С 2007 года, вот уже как лет, наша основная специфика - это создание сайтов для бизнеса или частной деятельности, веб дизайн, а также поддержка и администрирование готовых проектов. Каждая выполненная нами работа - это уникальный, а самое главное, адаптивный под все современные мобильные устройства дизайн сайта. Мы готовы создать сайт с нуля для каждого клиента с любого уголка России! Мы поможем Вам в создании, как одностраничных сайтов – визиток, так и крупных интернет магазинов или корпоративных сайтов. А все наши работы, большинство из которых действуют и по сей день!

Close

Целовальников Сергей


Веб-дизайн, HTML5, CSS3, jQuery, JavaScript, Верстка.

Верстальщик с большим опытом работы. Занимаюсь созданием сайтов с 2005 года. Постоянно обучаюсь и совершенствую свои навыки. Веду свои проекты, в том числе и данный блог.

Close