Как реализовать смену фона блока при прокрутке страницы?

V
На сайте с 04.06.2014
Offline
54
19646

Есть див, который движется медленнее относительно других элементов страницы при прокрутке. У этого дива фон задан изображением. Как можно реализовать плавную смену фона блока (фоновых изображений всего 4) при прокрутке страницы? Например, как здесь (блок "Самый мощный iMac в истории").

Партнёрка №1 в essay-нише (https://goo.gl/YfTPtG)
MO
На сайте с 25.09.2010
Offline
49
#1

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

K
На сайте с 03.06.2015
Offline
45
#2

Див движется, фон или картинка в нем меняются. В чем проблема-то?

Конкретно я сходил за вас и скопировал действующее вещество.


<div style="transform: translate3d(0px, -23.1729px, 0px);" class="hero-image-bundle">
<figure class="hero-image hero-routing"></figure>
<figure class="hero-image hero-apps"></figure>
</div>

транслейт делает смещение, а фигуры содержат фон и переключаются.

MYSQL PHP JS HTML CSS SEO TXT США СССР
A7
На сайте с 09.06.2015
Offline
2
#3

Если устроит jquery то решение вот:


<script type="text/javascript">
$(window).scroll(function(){
// 200px от верха
if ($(window).scrollTop() > '200'){
$('#div').css({"background":"url(http://www.fonstola.ru/pic/201111/1600x900/fonstola.ru-55699.jpg);"});
}
// 400px от верха
if ($(window).scrollTop() > '400'){
$('#div').css({"background":"url(http://www.zastavki.com/pictures/originals/2012/Backgrounds_Circles_colors_035456_.jpg);"});
}
// низ активного окна...
if ($(window).scrollTop() == $(document).height() - $(window).height()){
alert($(window).scrollTop());
$('#div').css({"background":"url(http://www.fonstola.ru/pic/201111/1366x768/fonstola.ru-55713.jpg);"});
}
});
</script>

измените значения на нужные и будет норм. проверил у себя - работает.:)

V
На сайте с 04.06.2014
Offline
54
#4

kostyanet, а как "транслейт делает смещение"?

Это через яваскрипт прописывается, чтобы значения обновлялись?

K
На сайте с 23.12.2014
Offline
5
#5

На примере отслеживается позиция при прокрутке и в определенном моменте у блока меняется position с absolute на fixed. И применяется transform: translate3d для каждого движения колеса мыши. Если не усложнять, то лучше как в примере выше через Jquery учитывать положение при прокрутке, а в CSS элемента добавить transition с нужными значениями для плавности смены фона.

WordPress для начинающих (http://belentsov.ru) Ваш личный помощник выполнит любую работу в ЛЮБОЕ время (http://www.work-zilla.com?ref=121253&sub=search)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий