Mike_Ro
@Mike_Ro
Python, JS, WordPress, SEO, Bots, Adversting

Как сделать появление элементов при прокрутки до них окна браузера?

На многих сайтах замечал следующую картину. Мы прокручиваем окно браузера вниз и как только достигаем определенного div, в этом div плавно появляются блоки с текстом. Вот пример theme.co/x.
Как сделать такое появление именно в момент того, как только мы достигаем этого блока, а не сразу при загрузке страницы?
  • Вопрос задан
  • 537 просмотров
Решения вопроса 2
kn1ght_t
@kn1ght_t
основная идея в том, чтобы у нужного элемента (который надо анимировать) получать высоту (смещение) от начала страницы
затем получать высоту экрана и смещение верха экрана от верха страницы
ну и сравнивать эти значения

примерно так jsfiddle.net/wrqnw8dd/1
Ответ написан
userAlexander
@userAlexander
Верстка наше все)
$('.elem') это элемент на который добавим класс, elem-active это добавляемый класс, а от него уже прописываем нужные стили.
var targetElem = $('.elem');
var targetElemPos = targetElem.offset().top;
$(window).resize(function(){
	targetElemPos = targetElem.offset().top;
});
$(window).scroll(function(){
	var scrolledAtop = $(this).scrollTop();
	if(scrolledAtop > targetElemPos){
		targetElem.addClass('elem-active');
	}
});
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
evgeniy2194
@evgeniy2194
PHP, js developer
Комментировать
black_wolf1894
@black_wolf1894
Junior Front End Developer
Animate css + wow.js, если правильно понял!
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы