CSSシェーダー+アニメーションを使用しています。私のシェーダークラスは次のように定義されています。
.shader{
-webkit-filter :custom(url(v.vs) mix(url(f.fs) multiply destination-over), 200 200);
-webkit-animation-name: test;
-webkit-animation-duration: 2s;
-webkit-animation-iteration-count: 1
}
jqueryを使用してスタイル(シェーダー+アニメーション)を動的に設定/設定解除しようとしてい$('#holder').addClass('shader');
ます$('#holder').removeClass('shader');
ただし、奇妙なことに、クラスをリセットすると (たとえば、removeClass の後に addClass を呼び出す)、シェーダーのみが再適用されますが、アニメーションは再適用されません (アニメーションがいつ開始されるかを確認するために AnimationStart イベントをフックしました)。なぜこれが当てはまるのか、どうすれば解決できるのか誰にも分かりますか?
編集:ここに JSfiddle スニペットの簡略版を追加しました。基本的に、アニメーションを div に 2 回再適用していますが、実際のアニメーションは初めて呼び出されるだけです。