84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
ヘルプ、jq によって動的に生成された要素を有効にするには、クリック イベントにバインドする必要があり、実行される関数にもクリック イベントがあり、関数が 2 回実行されます。この状況を解決するにはどうすればよいですか?
イベントオブジェクトを使用して、実際にクリックしたいターゲットを見つけます
実際には、イベントが 2 回バインドされているか、イベントがバブリングしているだけです 1. イベントをバインド解除してから再度バインドします。 リーリー
リーリー
最初に監視を削除してから、.off(handler).on(handler)を監視します
これは泡立っていますか?
off 最初にバインドを解除してからバインドします
上記の人がそれをより明確にしました。 1. 問題が見つかりました 動的に生成された要素がイベントにバインドされているため、1.1 は 2 回バインドされていますが、このイベントでは、以前にバインドされたイベントが再度呼び出されます
1.2 やはりイベントのバブリングが原因です (バブリングに慣れていない場合は、最初に関連情報をお読みください)
2. 動的に生成された要素は、必ずしも動的バインディング イベントを使用する必要はありません
delegate() メソッドを使用するイベント ハンドラーは、現在または将来の要素 (スクリプトによって作成された新しい要素など) で動作します。 ここをクリックして詳細なドキュメントを表示します: http://www.w3school.com.cn/jq...
on() の後に忘れずに off() をオフにしてください
イベントオブジェクトを使用して、実際にクリックしたいターゲットを見つけます
実際には、イベントが 2 回バインドされているか、イベントがバブリングしているだけです
2、バブリングをキャンセル1. イベントをバインド解除してから再度バインドします。 リーリー
リーリー
最初に監視を削除してから、
.off(handler).on(handler)を監視します
これは泡立っていますか?
off 最初にバインドを解除してからバインドします
リーリー
リーリー
上記の人がそれをより明確にしました。
リーリー1. 問題が見つかりました
動的に生成された要素がイベントにバインドされているため、1.1 は 2 回バインドされていますが、このイベントでは、以前にバインドされたイベントが再度呼び出されます
1.2 やはりイベントのバブリングが原因です (バブリングに慣れていない場合は、最初に関連情報をお読みください)
リーリー2. 動的に生成された要素は、必ずしも動的バインディング イベントを使用する必要はありません
delegate() メソッドを使用するイベント ハンドラーは、現在または将来の要素 (スクリプトによって作成された新しい要素など) で動作します。
リーリーここをクリックして詳細なドキュメントを表示します: http://www.w3school.com.cn/jq...
on() の後に忘れずに off() をオフにしてください