だから私の質問への2つの制約があります。jQueryの:バインドとバインド解除ライブをクリックしてイベント
- 私は私のクリックイベントでは、外部関数呼び出しを使用しなければならない、と
- は、私が生きてクリックイベントを使用する必要がありますが、むしろ典型的なクリックイベントをバインドします。
私の問題は、クリックイベントが発生した後にバインドを解除しようとしていると、クリックイベントコードが完了した後に再バインドしようとしていることです。コードが現在処理中に重複してクリックするのを防ぐためにこれをやっています(ボタンを2〜3回すばやくクリックできるようにするフェードイン/アウトのアニメーションがあり、2〜3回のコード実行が必要です) 。私が使用しているコードは以下の通りです:
$item.live("click", handleClick);
と
function handleClick(ev) {
$(this).die("click");
// perform code here, including things with 'ev'
$(this).live("click", handleClick);
}
は私が狂ったアム、またはこれは問題なく動作するはず?今すぐクリックはできますが、後ではクリックできません。明らかにdie()は動作していますが、何らかの理由でその関数に再バインドされていません。ライブクリックを再バインドするためにhandleClick()のコードに到達していることを確認しました。
アイデア?どんな助けでも大歓迎です。ありがとう。 documentationによると
@グレッグ、興味深いです。おそらく関数のライブクリックイベントを 'var $ tempVar = $( '#' + $(this).attr( 'id'))'に代入し、 '$ tempVar.live(" click "、handleClick)'これはうまくいくと思いますか? –
I * think * so ... – Greg
はいそうです – PetersenDidIt