Web 開発では、jQuery クリック イベント ハンドラーを効果的に使用すると、課題が生じる場合があります。直面する一般的な問題は、これらのイベントが望ましくない複数回トリガーされ、アプリケーションで予期せぬ動作が発生することです。
JavaScript でビデオ ポーカー ゲームを作成しようとしたときに、そのような事例の 1 つが発生しました。ベットの処理に使用される関数には、ベット ボタンにアタッチされたクリック イベント ハンドラーが含まれていました。ただし、これらのハンドラーは複数回実行され、その結果、賭け金が不正確になりました。
提供されたコードを分析することにより、問題は、既存のクリック イベントのバインドが適切に解除されていないことに絞り込むことができます。クリック イベントがボタンに割り当てられると、jQuery はそのボタンにイベント リスナーを追加します。前のリスナーのバインドを解除せずに同じクリック イベントが再割り当てされると、複数のリスナーが作成され、複数回の実行が発生します。
この望ましくない動作を防ぐには、新しいリスナーを再割り当てする前に、既存のクリック イベントのバインドを解除するようにコードを変更する必要があります。 1つ。これは、unbind() メソッドを使用して実行できます。
修正されたコードは次のとおりです:
$(".bet").unbind().click(function() { // Stuff });
新しいクリック イベント ハンドラーを割り当てる前に既存のクリック イベント ハンドラーのバインドを明示的に解除することで、コードは各クリックが確実に行われるようにします。意図したとおり、イベントを 1 回だけトリガーします。
以上がjQuery クリック イベントの複数のトリガーを防ぐ方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。