У меня проблема в том, что когда я вывешиваю, он повторяет анимацию столько раз, сколько раз он играл за таймер, на котором была мышь.
Если я остановлюсь до того, как он завершит свою первую итерацию анимации, то он go вернется в нормальное состояние без проблем. Однако, если я удержу его в течение более 2 секунд, чтобы он завершил как минимум 2 итерации, обратный процесс также повторит его 2 раза, прежде чем он вернется в исходное положение.
По сути, я хочу, чтобы он постоянно плавал при наведении на него, и я хочу, чтобы он go отступал после того, как зависал.
Вот ссылка на мою демонстрацию codepen: https://codepen.io/e1668058/pen/Exjjwdm
let theMenu = document.getElementById("menu");
const tl = new TimelineMax({paused:true});
tl.to(theMenu, 1, {y:"-20px", yoyo: true, repeat: -1});
function floatingOn() {
tl.play();
}
function floatingOff() {
tl.reverse();
}
Есть ли у него способ просто плавно go вернуться в исходное положение?
Заранее спасибо.