Если у меня есть анимация ключевого кадра CSS, вроде этого
@keyframes flash-red {
50% {
background: #f00;
}
}
#goflash.anm-flash {
animation-name: flash-red;
animation-duration: .5s;
background: rgba(255, 0, 0, 0);
}
Тогда я всегда могу вызвать анимацию следующим образом:
var gf = document.querySelector("#goflash");
gf.classList.remove("anm-flash");
setTimeout(function() {
gf.classList.add("anm-flash");
}, 50);
Есть ли способ переопределить время анимации/продолжительность анимации в зависимости от JavaScript? Я хотел бы сказать что-то вроде gf.animate("flash-red", "50%")
, чтобы сделать фон gf
красным или gf.animate("flash-red", "75%")
, чтобы сделать фон более похожим на rgba(255, 0, 0, .5)
.
В идеале тот же метод будет работать для переходов. gf.transitionTo("new-class", "50%")
будет показывать элемент как переход на полпути.
Очевидно, что flash-red
является просто примером - я хотел бы иметь возможность сделать это с любой анимацией.