2

Ajax がシナリオを設定し、jQuery がそれを実行します。ページが読み込まれる前に要素が存在しません。ページに動的に追加されたものをアニメーション化する方法が必要です。

何かのようなもの:

$(document).on("animate", "div", function (){});

このようなものは存在しますか?

さて、混乱があるようです。私は queue() を使用していますが、これはそれを作成したり、ajax を返した後に何かをしたりする問題ではありません。Ajax の後、プログラムは特定の ID を持つ img をビルドしてページに挿入します。ページに挿入されたオブジェクトをアニメーション化できるように、dom などをリロードする必要があります。

私は JSfiddle でアニメーション化をテストしましたが、正常に動作するため、これらのオブジェクトは最初の DOM の一部ではないため、アニメーション化されないため、DOM をリロードする必要があるというのが私の唯一の仮定です。

4

2 に答える 2

0

次のように、適切な関数でアニメーション化するだけです。

$("#nonexistent-element").animate({
  right: '10%'
});

ページの読み込み時に存在するかどうかに関係なく、#nonexistent-element が存在するとアニメーション化されます。ページの読み込み時に存在しない要素にイベントをバインドする場合にのみ、on() を使用する必要があります。

jsfiddle の作業: http://jsfiddle.net/emFpw/26/

于 2013-02-02T18:46:40.280 に答える
-1

コンテンツが Ajax 経由で読み込まれる場合、それらが機能するようにイベントをバインドする必要があります。または、必要に応じてイベントを親/ドキュメントのいずれかにバインドする jQuery の live/on メソッドを使用できます。

2 つの手法、つまり、コンテンツが読み込まれたときにバインドするか、live/on を使用すると、イベントがトリガーされます。

例:コンテンツが挿入されると、上記の回答でLrdwhytが提案したように実行できます。または、ロードされる前に要素をバインドします

$("#non-existing-elem").live("click",function(){
     $(this).animate({right:'10'});
})
于 2013-02-03T11:27:09.783 に答える