/ Scripts & jquery / Parallax расширение сайта

Parallax расширение сайта

HIT

08.05.2016

3901

Parallax при скроллинге смотрится очень эффектно. Задача: гармонично внедрить его в верстку сайта.

Parallax.js

Подключаем скрипт:

wp_enqueue_script( 'parallax', get_template_directory_uri() . '/js/parallax.min.js' , array( ), '1.0' , 'screen' );

Слою к которому нужно применить parallax добавляем следующее

Пример для слоев главной страницы, либо страницы лэндинга

На страницах лэндинга наблюдаются сбои в работе

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

<div id="third-block" align="center" class="wrapper plast parallax-window" data-parallax="scroll" data-image-src="https://opttour.ru/wp-content/uploads/2016/05/level-up1.jpg">
<div class="wrapper-2">

<h2>Заголовок</h2>
Содержимое

</div>
</div>

CSS

.parallax-window {min-height: 200px; background: transparent;}

на всякий случай
.plast {
    background-size: cover;
    background-position: center;
    padding: 75px 0;
    border-top: 1px solid #FFFFFF;
}

.wrapper {
    width: 100%;
    float: left;
    overflow: hidden;
    position: relative;
    transition: all .3s 0.5s ease;
    -webkit-transition: all 0.5s ease 0s;
}

Для фона сайта (ставим после wrapper)

<div class="parallax-bg" data-parallax="scroll" data-image-src="<?php echo $url ?>"></div>

CSS

.parallax-bg {
	min-height: 200px;
	background: transparent; 
	position: absolute; 
	width: 100%;
	top: 0;
	bottom: 0;   
}

Parallax ImageScroll

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

simplePARALLAX

Данный скрипт направлен преимущественно на изображения в виде картинок, а не фона. Конечно можно приспособить и под фон, но нужно верхний слой делать position:absolute. Работает очень просто и гладко.

Подключаем скрипт:

wp_enqueue_script( 'simpleParallax', get_template_directory_uri() . '/js/simpleParallax.min.js' , array('jquery'), '1.0' , true );

Инициируем его

<img class="thumbnail" src="image.jpg" alt="image">

jQuery(document).ready(function() { 
// либо для какого либо класса
var image = document.getElementsByClassName('thumbnail');
new simpleParallax(image);

// либо для всех изображений
var images = document.querySelectorAll('img');
new simpleParallax(images);
});	

В данном решении есть горизонтальный параллакс

var image = document.getElementsByClassName('thumbnail');
new simpleParallax(image, {
	orientation: 'right'
});

Отложенный эффект параллакса:

var image = document.getElementsByClassName('thumbnail');
new simpleParallax(image, {
	delay: .6,
	transition: 'cubic-bezier(0,0,0,1)'
});

А также увеличение изображения и эффект параллакса за края изображения (фактически движение изображения):

var image = document.getElementsByClassName('thumbnail');
new simpleParallax(image, {
	scale: 1.5,
	overflow: true
});

Universal Parallax

Еще один скрипт по созданию эффекта параллакса. Скрипт и стили занимают всего 4 Kb. Работает плавно. Работает в мобильной версии.

Инициализация:

new universalParallax().init({
	speed: 4
});

Верстка:

<div class="parallax" data-parallax-image="image.jpg"></div>

Стили можно прописать в теме, их всего два:

.parallax__container {
	clip: rect(0, auto, auto, 0);
	height: 100%;
	left: 0;
	overflow: hidden;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -100;
}

.parallax {
	position: fixed;
	top: 0;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	width: 100%;

	/* BG behaviour */
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
[site-socialshare]
  • Комментарии
  • Вложения

Добавить комментарий

Пока нет комментариев. Будь первым!

Parallax расширение сайта
Выдвижной Footer
Рекомендации для васВыдвижной FooterOpttour.ru
Спасибо! Наш менеджер свяжется с Вами в течении 5 минут.