jqueryの.delegate
をバインドまたはアンバインドする方法を教えてください。 シンプルなクリックでこのjsを使っているとします。jQueryのバインディングとバインドを解除するデリゲート
function spanclick(){
$(this).html('<input class="mm" value="' + $(this).text() + '"/>');
$(this).unbind("click");
}
$("span.la").click(spanclick);
$("span.la").unbind("click");
今、私は単純なクリックの代わりに代理人に切り替える必要があります。
もちろん、ページの読み込み時に作成されていないセレクタにも使用したいので、 jqueryの中 どうか、私はbind
とunbind
delegate's
:または私は.live()
質問を使用する必要がありますか?
あなたが」 '.dに行くelegate() 'を' document'に追加すると、 '.live()'を使うこともできます。 –
@Matt Ball:明確にするコメントを追加しました。私は同意する、 '文書'は良い候補者ではない。 – Mrchief
'.delegate()'は、無駄な初期DOM選択をしないので、やや効率的です。また、イベントの委任について考えている可能性があり、何が起こっているのかを理解している可能性が高いため、IMOの方がやや優れています。 – user113716