Как правильно запускать анимацию у элементов когда они появляются во вьюпорте?
Подключаю Animate.css, не понимаю, как реализовать запуск анимации на элементе, когда он появляется во вьюпорте?
Какой алгоритм создания такого функционала без jQuery?
Как и с jQuery. Вешаем событие на скролл. Для каждого элемента проверяем отступ от начала документа, если скролл == высоте отступа, тогда запускаем анимацию.
Не понятно, как именно "запускать" анимацию. Например, у меня есть элемент с классами animate и fade, что нужно сделать, чтобы запустить анимацию на нём?
Dubrovin, Вы как раз и должны добавлять и удалять эти классы.
Просто откройте пример https://daneden.github.io/animate.css/ в devtools, понажимайте кнопку и посмотрите как оно работает.
tyzberd, я правильно понимаю, что я могу присвоить классы animated, invisible, slideInUp элементу сразу же и убирать класс invisible как только сработает событие по скроллу? Этого достаточно чтобы анимация запустилась?
нет, сразу все присвоить не получится. Класс с названием анимации, должен добавляться потом.
animated вроде как можно сразу, но не уверен.
invisible это класс с bootstrap, он просто скрывал текст, может вам он не нужен