Вы можете проверить, содержат ли element.style.WebkitAnimation
и element.style.animation
какое-либо значение, и выполнить run()
, если значение равно ""
Редактировать Оказывается, что .style
вернется "«для любой стоимости.Вам нужно window.getComputedStyle()
вместе со свойством animationName
.Если это none
, анимация отсутствует, иначе есть.Проверьте код ниже:
var el1 = document.getElementById("notAnimation");
console.log(window.getComputedStyle(el1)["animationName"])
var el2 = document.getElementById("onAnimation");
console.log(window.getComputedStyle(el2)["animationName"])
div {
padding: 10px;
margin: 20px;
}
#notAnimation {}
#onAnimation {
animation: scale 10s ease-in-out;
}
@keyframes scale {
0% {
transform: scale(1);
opacity: 1;
color: black;
}
50% {
transform: scale(0.95);
opacity: .4;
color: red;
}
100% {
transform: scale(1);
opacity: 1;
color: black;
}
}
<div id="notAnimation">
Not Animation
</div>
<div id="onAnimation">
Animation
</div>