2

JQueryを使用してdivタグを次のように設定した場合:

$('#maindiv').html(some content...);

次に、「maindiv」が現在持っているオブジェクトにイベントをバインドした場合、後でhtmlを「maindiv」にリセットした場合、それらのイベントを再バインドしないことを選択した場合、それらのイベントは引き続きハングしますか?つまり、HTMLをリセットした後でこれらのイベントを再度バインドすると、二重の作業を行うことになりますか?

うまくいけば、それは理にかなっています。洞察に感謝します。

デビッド

4

2 に答える 2

2

要素の内容を更新すると、内部要素のすべてのイベントが削除されます。

ただし、イベント委任を使用してイベントをバインドできるのは1回だけです(いわゆる委任イベントアプローチ)。

$("#maindiv").on("click", "#element", function() {
    // do something
});
于 2012-07-04T20:44:40.407 に答える
0

html関数を使用してhtmlを生成し、バインドのみを使用する場合、バインド後に追加される将来の要素はイベントをトリガーしません。

これを並べ替える最も簡単な方法は、最初のコンテンツにイベントが適用された後に要素を追加することを計画している場合は、バインドではなくライブを使用することです。

于 2012-07-04T20:44:03.053 に答える