2011-09-08 4 views
1

私はdeleateに私の好きなコンテキストセレクタを取得する最初の必要があることを知っている:私も $(「#Mydiv」)を持っていけない場合将来のconext要素にjqueryでdelegateを使用できますか?

$("#Mydiv").delegate(... 

しかし、何を?

​​は、サーバから将来来るべき場合はどうでしょうか

私はページ上のそれを今を置く場合は$(「#Mydiv」)はTHERサーバからアヤックスに来るとき、それは将来で動作しますか?

答えて

2

$("#MyDiv").live('click', function() {})です。

ライブはすべてのイベントをドキュメント要素にバインドすることで動作し、イベントはDOMをバブルアップした後に処理されます。フードの下では、.live()は実際には$(document).delegate("#MyDiv", 'click', function() {})と呼ばれています。

+0

私のページにコンテナが存在しない場合、デリゲートを使用するポイントはありません...正しいのですか? –

+1

が正しい。 '.delegate()'はオブジェクトにバインドすることで動作します。そのオブジェクトが存在しない場合、代理人は動作しません。 '.live()'は利用可能であることが保証されている 'document'オブジェクトに委譲することによってそれを回避します。 – Chris

1

#MyDivが存在しない場合は.live()としたいと思います。または、ページ上に常に存在する別の要素に委任します。

関連する問題