【发布时间】:2015-04-19 07:07:18
【问题描述】:
我试图在每次按下按钮时重现特定动画。
具体来说,我使用jQuery 和animate.css 库来实现此效果:单击按钮时,将一个类(准确地说是两个类:fadeInDown animated)添加到我想要动画的元素中。
动画确实可以正常工作,但只有一次。这是为什么呢?
小提琴:http://jsfiddle.net/jqm4vjLj/2/
我希望每次单击按钮时都重置动画,即使上次单击已完成一半。每当我单击按钮时,它也应该可以工作,而不仅仅是一次。
JS:
$("#button").click(function () {
$("#button").removeClass();
$("#button").addClass("fadeInDown animated");
});
animate.css 中的类:
@-webkit-keyframes fadeInDown {
0% {
opacity: 0;
-webkit-transform: translateY(-20px);
transform: translateY(-20px);
}
100% {
opacity: 1;
-webkit-transform: translateY(0);
transform: translateY(0);
}
}
@keyframes fadeInDown {
0% {
opacity: 0;
-webkit-transform: translateY(-20px);
-ms-transform: translateY(-20px);
transform: translateY(-20px);
}
100% {
opacity: 1;
-webkit-transform: translateY(0);
-ms-transform: translateY(0);
transform: translateY(0);
}
}
.fadeInDown {
-webkit-animation-name: fadeInDown;
animation-name: fadeInDown;
}
.animated {
-webkit-animation-duration: 1s;
animation-duration: 1s;
-webkit-animation-fill-mode: both;
animation-fill-mode: both;
}
【问题讨论】:
标签: javascript jquery css animation