2

スタイルの CSS プロパティを変更する jQuery を使用して CSS3 トランジションを追加しようとしています。(私はそれをやりたいのですtransform3dが、プロパティは動的です...)

alert非常にばかげたことかもしれませんが、CSS プロパティの更新前に行うと、CSS3 トランジションがうまく機能する理由がわかりません。そうでない場合は、そうではありません。

ここに例のjsfiddleがありalertます。私の意味を知りたい場合は、コメントしてください: http://jsfiddle.net/7WPT8/1/

CSS の更新に使用されるコードは次のとおりです。

//topPosition is the dynamic value
$(this).css('top', topPosition+'px');

以前に使用した場合にのみ機能しalertます。

4

2 に答える 2

2

要素を作成し、その後要素を使用している場所で関数を直接呼び出しshowFlash()ます。シーケンスに時間の問題がある可能性がありalert()、現在のシーケンスが中断されるため、機能します。

これを簡単に防ぐにはdiv、コンテンツに直接追加します。

http://jsfiddle.net/7WPT8/4/

于 2013-03-28T12:36:36.197 に答える
2

Sven の言うとおりです。これはタイミングの問題です。また、最小限のタイムアウトを使用して css プロパティの変更をトリガーすることで回避することもできます (最初からドキュメントに flashmessage を含めることができない場合) – http://jsfiddle.net/7WPT8/5/を確認してください

(ここでは var を使用して、jQuery 要素をクロージャーを介して無名関数に渡します。そうしないと、タイムアウトを介して実行が分離されるため、_this何が原因かわかりません。)$(this)

于 2013-03-28T12:42:03.580 に答える