Главная » Файлы » Скрипты плагины и дополнения » Разное

Рефокусировка объектов на сайте с помощью JS

Мы рассмотрим весьма маленькую заплатку для сайта, а именно для изображений, это будет рефокусировка, кто не знает кто это, расскажу, это изменение фокуса для объектов, с помощью данного приема можно выделить конкретную информацию на сайте. Такое реализовать можно достаточно просто, мы будем использовать небольшой фрагмент правил CSS и JS, кроме этого нам понадобится несколько изображений, некоторые из них будет в формате png, так как нам необходима прозрачность, и так, давайте посмотрим, что у нас получилось.
Для образца мы взяли за основу постер известной игры battlefield 4, мы разделили его на несколько частей. такой эффект можно использовать для непосредственного выделения информации. Следует отметить, что такой эффект будет работать только в браузерах Webkit.
Шаг 1. HTML
Код
<div id='layers'>
<img src='rjDAGHW.jpg' id="bg">
  <img src='Kuwy4hu.png' id="dirt">
<img src='JqIXqs2.png' id="runner">
<div id=instructions>передвигайте мышку</div>
</div>

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

Шаг 2. CSS
Теперь нам необходимо соединить все слоя, для этого мы будем использовать элементы склеивания и позиционирование для контейнера.
Код
#layers {
  position:relative;
  width:1200px;
  left: 50%;
  height:600px;
  margin-left:-600px;
  overflow:hidden;
  -webkit-transform-style: preserve-3d;
}
img {
  -webkit-transform: translate3d(0, 0, 0);
}
#layers #runner {
  position:absolute;
  top:0px;
  left:0px;
}
#layers #dirt {
  position:absolute;
  top:0px;
  left:0px;
}
#instructions {
  width:400px;
  margin-left:400px;
  height:20px;
  text-align:center;
  font-size:12pt;
  position:absolute;
  top:10px;;
  font-family:Helvetica,Arial;
  left:0;
  background:rgba(0,0,0,0.6);
  border-radius:10px;
  color:white;
}

Шаг 3. JS
Последним шагом будет привязка фокуса к мышке и его активация, для этого нам понадобиться несколько правил JS:
Код
var mouseY = 0;
getBlur = function(depth){
  var result = Math.abs(depth-mouseY/50);
  return result;
};
$(document).ready(function() {
  $(window).mousemove(function(e){
  mouseY = e.pageY;
  $('#bg').attr('style','-webkit-filter:blur('+getBlur(2)+'px);');
  $('#dirt').attr('style','-webkit-filter:blur('+getBlur(3)+'px);');
  $('#runner').attr('style','-webkit-filter:blur('+getBlur(5)+'px);');
  });
});

На это всё!
Поделись ссылкой с друзьями:
Просмотров:
794
17.03.2014, 22:53
Категория: Разное | Добавил: туссин | Теги: js, рефокусировка, фокус, css
Просмотров: 794 | Загрузок: 1 | Рейтинг: 5.0/1
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
comments powered by HyperComments

Disqus comments

comments powered by Disqus
Гипер-ссылка на источник
HTML
BB-Code
Ссылка

Сообщить о неработающей ссылке

E-mail отправителя *:
Тема *:
Адрес материала *:
Адрес битой ссылки *:
Проверка *:

1
Свернуть
Развернуть чат
Необходима авторизация
0