ホームページ >ウェブフロントエンド >jsチュートリアル >jQuery は、複数の送信によるクリックとダブルクリックを防止し、動的関数または複数のパラメーターを渡す_jquery
今日は、JQ のダブルクリック イベントが複数の送信を妨げる問題について書きます。このイベントは関数を通じてバッチで定義できるため、より汎用性が高く、メソッドを通じて要素のイベントを動的にバインドできます。また、関数名または複数のパラメーターを動的に渡すことができます (この例では関数名のみを渡し、それを Eval を通じて呼び出します)。
jQuery のイベント バインディングでは、ダブルクリック イベント (dblclick) の実行時に 2 つのクリック イベント (click) をトリガーできることは誰もが知っています。つまり、ラベル要素 (div など) がクリック イベント (click) とダブルクリック イベント (dblclick) の両方にバインドされている場合、クリック イベント (click) が実行されると、ダブルクリック イベント (dblclick) はトリガーされず、ダブルクリック イベント (dblclick) は 2 つのクリック イベント (click) をトリガーしません。
まず、クリック イベントの実行シーケンスを確認します。
クリック (クリック): マウスダウン、マウスアウト、クリック;
ダブルクリック (dblclick): マウスダウン、マウスアウト、クリック、マウスダウン、mouseout 、click、dblclick;
ダブルクリック イベント (dblclick) では、トリガーされた 2 つのクリック イベント (click) のうち、最初のクリック イベント (click) はブロックされますが、2 番目のクリック イベント (click) はブロックされません。ミーティング。つまり、ダブルクリック イベント (dblclick) は、クリック イベント (click) の結果とダブルクリック イベント (dblclick) の結果を返します。ダブルクリック イベントの結果 (dblclick) と 2 つのクリック イベントの結果 (click) の代わりに。
この場合は、余分なクリックイベント(クリック)を削除するだけで問題は解決します。
効果は次のとおりです:
http://images.cnitblog.com/i/554071/201404/010846579687197.png
ソース コードは次のとおりです: