0

奇妙な再帰的な状況があります。

小さなウィジェットと HTML5 contenteditable を使用して、要素内の HTML を変更しています。

その要素に、次のようないくつかのイベントをバインドしました。

$('.myelement).on('DOMNodeInserted DOMNodeRemoved DOMCharacterDataModified', ..

これらのイベントは、成功すると同じ要素を変更する AJAX 呼び出しをトリガーします。

$('.myelement').html(new_value)

しかし問題は、これが要素のバインドされたイベントをトリガーすることです。そして、止められない ajax 再帰を取得します。

のようなことは可能ですか?

$('.myelement').html(new_value).preventDefault()

のように、バインドされたイベント トリガーをトリガーしませんか?

4

1 に答える 1

2

いいえ。

代わりに、要素の更新中にハンドラーのバインドを解除するか、更新中にフラグを設定し、ハンドラーでそのフラグを確認して何もしないことができます。

于 2013-10-07T15:58:25.010 に答える