【发布时间】:2021-01-10 21:58:22
【问题描述】:
我想做一个简单的 JavaScript onclick 动画。我的问题是当我点击按钮时,动画被执行,但是当我再次点击按钮时,什么也没有发生。在第三次单击时,动画再次播放。我想做到这一点,动画在第二次点击时播放。 这是我的代码”
var anim = document.getElementById("anim");
anim.onclick = function highA() {
var willCheck = document.getElementById("contactId");
if (!willCheck.classList.contains("highAnim")) {
willCheck.classList.add("highAnim");
} else {
willCheck.classList.remove("highAnim");
}
}
#contactId { background: red;}
.highAnim {
background-color: var(--white);
animation-name: highcheck;
animation-duration: 0.35s;
animation-timing-function: ease-in-out;
}
@keyframes highcheck {
0% {transform: rotate(0);}
25% {transform: rotate(1deg);}
50% {transform: rotate(2deg);}
75% {transform: rotate(1deg);}
100% {transform: rotate(0);}
}
<a onclick="anim()" id="anim">Click</a><br><br>
<div id="contactId">Some Text</div>
【问题讨论】:
标签: javascript html css css-animations