Я подготовил приложение StackBlitz (угловое), чтобы продемонстрировать свою проблему.
Как видите, тексты движутся с разной скоростью из-за разной длины текста. Я хотел бы динамически устанавливать продолжительность, чтобы все текстовые анимации имели одинаковую скорость прокрутки. В моем текущем расчете чего-то не хватает (или, возможно, нет?), но мне трудно понять это. Это возможно?
Решил это. GetDuration теперь выглядит так:
getDuration(el: any) {
const scrollInterval = 25;
const scrollSpacePx = 1;
const speed = scrollSpacePx / scrollInterval;
const durationMs = (el.clientWidth + el.parentElement.clientWidth) / speed;
const durationSec = durationMs / 1000;
return durationSec.toString() + "s";
}