クラスを追加/削除するjQuery UIのアニメーションを使用して、ページ全体のさまざまな子要素の多くの変更をアニメーション化する親要素のクラスを切り替えようとしています。CSS の変更がクラスを追加している要素にも直接影響する場合、これを機能させることができますが、子要素の変更をアニメーション化するようには見えません。
たとえば、私の HTML が次のような場合:
<div class="parent">
<span class="child">added to my parent</span>
</div>
CSS:
.red-parent .child { background-color: red; }
しようとすると$( ".parent" ).addClass("red-parent",2000)
、アニメーションがオンになりません.child
.2秒後に色が赤に変わります。
どんな提案でも大歓迎です!
アップデート:
私はまだこれを理解することはできませんが、CSS3 のトランジションを使用して、互換性のあるブラウザーで効果を近似することができます:
.child {
-webkit-transition: all 1s ease;
-moz-transition: all 1s ease;
-o-transition: all 1s ease;
transition: all 1s ease;
}
つまり、jQuery アニメーションについて心配する必要はありません。jQuery UI をまったく使用する必要はありません。addClass()
などは自動的にアニメーション化されます。それでも、jQuery UI はこれを行うことができるべきではないでしょうか? CSSトランジションは、私が望むものには少しやり過ぎであり、同じ要素で実行したい他のアニメーションの邪魔になる可能性があります(たとえば、メニュー項目にカーソルを合わせます)。