@artur012097

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

Как сделать поэтапную анимацию появления элементов при скроле через JS? Желательно без использования готовых библиотек (но не мешает) и чтобы соседниь элемент до конца анимации был фиксированным (не обязательно)?
  • Вопрос задан
  • 128 просмотров
Пригласить эксперта
Ответы на вопрос 2
DanArst
@DanArst Куратор тега CSS
Гриффиндор в моде при любой погоде!
Без библиотек, логично что вам придется писать свое решение.
Из библиотек есть wow.js например
Ответ написан
Комментировать
ivankprod
@ivankprod
Системный / веб fullstack-разработчик
Можно через IntersectionObserver, например :)
if ('IntersectionObserver' in window &&
	    'IntersectionObserverEntry' in window &&
	    'intersectionRatio' in window.IntersectionObserverEntry.prototype) {
		if (!('isIntersecting' in IntersectionObserverEntry.prototype)) {
			Object.defineProperty(window.IntersectionObserverEntry.prototype, 'isIntersecting', {
				get: function() { return this.intersectionRatio > 0; }
			});
		}

		var oObserver = new IntersectionObserver(function(entries, observer) {
			entries.forEach(function(entry) {
				if (entry.isIntersecting) {
						//  делаем анимацию (добавляем css-класс в котором настроены анимации)
						entry.target.classList.add('animate');
				}
			});
		});

		// вешаем observer на массив элементов
		arrayElements.forEach(function(elem) {
			oObserver.observe(elem);
		});
	}
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
summer Ярославль
от 100 000 до 140 000 ₽
КРАФТТЕК Санкт-Петербург
от 60 000 до 80 000 ₽
19 апр. 2024, в 18:38
1500 руб./в час
19 апр. 2024, в 18:36
1500 руб./за проект
19 апр. 2024, в 18:36
30000 руб./за проект