Библиотека AOS (Animate on Scroll) предоставляет удобный способ добавления анимаций к элементам при их появлении в области видимости пользователя. Один из самых быстрых способов интеграции — использование CDN (Content Delivery Network). Этот метод не требует установки через npm или скачивания файлов, что упрощает тестирование и быстрый старт проекта.
Для корректного отображения анимаций необходимо подключить CSS-файл
библиотеки. Он содержит все стили, необходимые для анимации элементов.
Подключение осуществляется через тег <link> в
<head> HTML-документа:
<link href="https://cdn.jsdelivr.net/npm/aos@2.3.4/dist/aos.css" rel="stylesheet">
Ключевые моменты:
Для работы анимаций требуется скрипт AOS. Его подключают перед
закрывающим тегом </body> для оптимизации загрузки
страницы:
<script src="https://cdn.jsdelivr.net/npm/aos@2.3.4/dist/aos.js"></script>
Особенности подключения:
</body>
обеспечивает, что все элементы DOM будут загружены перед инициализацией
анимаций.defer, чтобы
браузер не блокировал рендеринг страницы:<script defer src="https://cdn.jsdelivr.net/npm/aos@2.3.4/dist/aos.js"></script>
После подключения CSS и JS необходимо инициализировать AOS. Это
делается с помощью функции AOS.init(). Можно вызвать её в
отдельном скрипте либо внутри тега <script> после
подключения библиотеки:
<script>
AOS.init({
duration: 1200, // длительность анимации в миллисекундах
once: true, // анимация срабатывает только один раз при скролле
});
</script>
Параметры инициализации:
duration — определяет скорость анимации. Значение по
умолчанию — 400 мс.once — если true, элемент анимируется один
раз; при false анимация повторяется при каждом появлении
элемента в области видимости.offset — расстояние в пикселях от нижней границы окна
до элемента, при котором начинается анимация.Пример с дополнительными настройками:
AOS.init({
offset: 100,
delay: 200,
duration: 800,
easing: 'ease-in-out',
once: false,
});
Для каждого анимируемого элемента используется атрибут
data-aos, который задаёт тип анимации:
<div data-aos="fade-up">Контент с анимацией появления снизу</div>
<div data-aos="zoom-in" data-aos-delay="300">Элемент с задержкой анимации</div>
Часто используемые атрибуты:
data-aos — тип анимации (fade,
fade-up, fade-down, zoom-in,
flip-left и др.).data-aos-delay — задержка анимации в
миллисекундах.data-aos-duration — индивидуальная длительность
анимации для конкретного элемента.data-aos-offset — смещение для срабатывания анимации
относительно области видимости.<link> и
<script>).</body> для корректной работы анимаций.