9

新しく一致したアイテムで jQuery 関数を自動的に呼び出すことは可能ですか?

たとえば、次のコードがあります。

$(document).ready(function(){
    $('[draggable]').draggable();
});

これにより、[draggable] に一致する各要素に 'draggable' が追加されますが、さらに道に沿って 'draggable' 属性を持つ新しい要素が追加されると、'draggable()' 関数が呼び出されません。

DOM などを監視し、セレクターに一致する新しい dom アイテムごとにこのメソッドを呼び出すことは可能ですか?

「クリック」イベントなど(jqueryデリゲートメソッド)にこのようなものがあることは知っていますが、私が知る限り、この場合にはそれを使用できないようです。

4

5 に答える 5

4

「 Mutation Events 」を確認してくださいDOMNodeInserted というイベントがあり、それが役立つかもしれません

ちなみに、チェック:JQuery - DOMNodeInserted で要素を使用する

于 2012-08-26T21:00:59.533 に答える
1

.on()jQuery1.7以降を実行している場合に必要なものです。ページに追加された要素と、呼び出されたときにすでに配置されている要素で実行されます。以前のバージョンを使用している場合は、この.live()メソッドを確認してください。このメソッドは廃止されましたが、要素が追加された同じ機能を備えています。

于 2012-08-26T21:30:49.287 に答える
1

jQueryに「.live()」がありましたが、廃止されたようです?! 現在、「.live()」から新しい「.on()」メソッドへの変換を取得しないでください。しかし、自分自身を見て、フォーラムで質問してください...これが正しい方法です。 ..

http://api.jquery.com/live/

于 2012-08-26T20:57:28.137 に答える
0

使用している jQuery のバージョンに応じて、.on() メソッドを調べてください。あなたがここで探しているものを理解できれば、それはあなたのニーズを満たすはずです。

以前のバージョンのフレームワークで同等だったのは.live().

于 2012-08-26T20:58:15.463 に答える