left
スタイルプロパティが定義されtransition
、そのプロパティ用のブロックがあるとしましょう。
<div id="caret" class="caret" style="left: 20px"></div>
.caret {
transition: left 0.3s;
}
さて、私がleft
経由して変更すると、$.css()
すべてが完全に移行します。
$('#caret').css('left', '100px');
しかし、DOM内のある場所から別の場所にブロックを移動してから変更するleft
と、何も遷移せず、すぐに指定された値にジャンプします。
$('#caret').appendTo('#container').css('left', '50px');
ただし、少し待ってからもう一度変更left
すると、遷移が再び戻ります。準備に時間がかかる気がします。
この問題を示すために、簡単なショーケースを作成しました:http: //jsfiddle.net/L624m/2/
それで、なぜそれが起こっているのですか?