ホームページ >ウェブフロントエンド >jsチュートリアル >ダブルクリックイベントとクリックイベント間の競合を解決する方法
今回は、ダブルクリックイベントとクリックイベントの競合を解決する方法を紹介します。ダブルクリックイベントとクリックイベントの競合を解決するための注意事項は何ですか?実際のケースを見てみましょう。
JS コードの同じ関数ブロックでは、通常、クリック イベントとダブルクリック イベントが同時に使用されますが、通常は問題が発生します。つまり、ダブルクリックするとダブルクリック イベントが実行され、ダブルクリック イベントが 2 つ実行されます。クリックイベントも実行されます。このような競合は、ZTree と DHTMLX でよく発生します。 2 つのイベント間の競合を解決するには、クリック イベントを遅延させる必要があります。この遅延中にクリック イベントが検出された場合、2 つのクリックはダブルクリック イベントとみなされます。そして、2 回目のクリックが有効にならないように、できるだけ早く遅延タイマー をクリアしてください。
具体的なコードは次のとおりです:var clickFlag = null;//是否点击标识(定时器编号) function doOnClick(...) { if(clickFlag) {//取消上次延时未执行的方法 clickFlag = clearTimeout(clickFlag); } clickFlag = setTimeout(function() { // click 事件的处理 }, 300);//延时300毫秒执行 } function doOnDblClick(...) { if(clickFlag) {//取消上次延时未执行的方法 clickFlag = clearTimeout(clickFlag); } // dblclick 事件的处理 }この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。 推奨読書:
Webpack のホット リフレッシュとホット ロードの使用方法の詳細な説明
以上がダブルクリックイベントとクリックイベント間の競合を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。