3

私の問題: ajax を介していくつかの要素をロードした後、いくつかのオンクリック関数をバインドしますが、ユーザーが同じ要素を数回ロードすると、バインドされたアクションが繰り返されます (少なくともそのように見えます)。私は試しましたがunbindclick(function(){return false;});要素からクリックアクションを完全に削除しました...)。その種の問題の標準的な解決策は何ですか?

4

2 に答える 2

6

ほとんどのイベントで使用できますlive()(jQuery 1.3+):

$("td").live("click", function() {
  // do stuff
});

<td>これにより、このコードも実行した後に存在する要素にクリック イベントがバインドされます。

これは、バインド/バインド解除を試みて、特定の要素に同じイベントが 2 回バインドされないようにするよりも、はるかにクリーンなソリューションです。

于 2009-10-21T16:56:48.967 に答える
1

jQuery 1.3.2 を使用$('').live('click', function() {});している場合は、そのセレクターに一致するすべての要素にアクションを持たせるために使用できます。新しい要素があってもイベントを維持します。

于 2009-10-21T16:57:51.457 に答える