したがって、私の質問には2つの制約があります。
- クリック イベントで外部関数呼び出しを使用する必要があり、
- 通常のクリック イベントをバインドするのではなく、ライブ クリック イベントを使用する必要があります。
したがって、私の問題は、クリックイベントが発生した後にバインドを解除し、クリックイベントコードが完了したら再バインドしようとしていることです。コードが現在処理中のときに重複したクリックを防ぐためにこれを行っています (ボタンを 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() のコードに到達することを確認しました。
何か案は?どんな助けでも大歓迎です。ありがとう。