IT_Highlander
@IT_Highlander

Как анимировать строку с логотипами (в случае если их количество заранее неизвестно)?

Есть блок с логотипами клиентов, на разных страницах подгружается разное количество логотипов с бэкенда. Нужно эту строчку анимировать постоянным движением с постоянной скоростью и зацикливанием, и чтобы после последнего логотипа не было передергивания строки с возвратом назад, а сразу снова шел первый логотип в списке.
Только ванильный JS, никаких jQuery.

Все найденные решения, как на чистом CSS так и на JS оперируют только заданной длиной строки с логотипами, animation-duration статическая. В итоге блок с 10ю лого крутится быстро, а с 40 медленно. Плюс на CSS всегда видно окончание списка, или просто пустое место крутится или дерганье с возвратом назад в противоположном направлении.
Сейчас используется готовая библиотека swiper js, но она большая и вечно какие-то, то ошибки выдает в консоли, то на нее ругаются все анализаторы скорости.

В общем хотелось бы вариант ванильного куска кода, который можно использовать. Знаю, что это больше похоже на задачу, но по сути прошу кинуть линками на готовые решения, которые вы используете, не верю, что все только тяжелые библиотеки юзают, или хотя бы помогите сформулировать правильно поисковые запросы, ибо ну вообще не то ищется.
  • Вопрос задан
  • 965 просмотров
Пригласить эксперта
Ответы на вопрос 1
@HealSpirit
https://github.com/justin-chu/react-fast-marquee
Библиотека хоть и реактовская, но верстку и логику работы можно адаптировать под чистый js
Можно задать скорость движения (px/с). Ширина контента считается через getBoundingClientRect. animation-duration зависит от ширины контента и скорости движения
https://www.react-fast-marquee.com/
https://www.react-fast-marquee.com/demo
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы