2

PHP/jQuery アプリケーションを作成していますが、イベント ハンドラーが多すぎるのはどのくらいなのでしょうか?

たとえば、メインの .js ファイルには、約 15 個あります

$('body').on('click','.someElementClass',function(){
    someFunction();
});

これを達成するためのより良い方法はありますか/これのベストプラクティスは何ですか?

編集:上記の「body」は単なる例です。私はできる限り深い要素にバインドしています

4

2 に答える 2

3

アプリケーションがパフォーマンス要件に適合する場合、多すぎません。そうでない場合は、多すぎます。それは簡単です。

于 2012-11-07T21:45:27.873 に答える
3

「これを達成するためのより良い方法はありますか / これのベストプラクティスは何ですか?」

はい、もっと良い方法があります。現在、すべてのクリック アクティビティを 1 つのコンテナーにバインドしています。

これは.someElementClass、ページがクリックされるたびに every を呼び出す必要があることを意味し、イベントがバブルするため、実際には複数回呼び出す必要があります。

適切な方法は、指定された各セレクターを包含する最も深くネストされたコンテナーにハンドラーをバインドすることです。そうすれば、各ハンドラーは、ページのその部分内のクリックに対してのみ呼び出されます。

「いくつのイベント ハンドラーが多すぎるのだろうか?」

当然、これはアプリケーションの要件に依存しますが、上記のアプローチを使用すると、複数のハンドラーの存在が懸念されなくなります。

于 2012-11-07T21:46:11.897 に答える