我正在寫一個PHP/jQuery的應用程序,我想知道許多事件處理程序是如何太多?多少個javascript事件處理程序太多了?
例如,在我的主要js文件我有大約15
$('body').on('click','.someElementClass',function(){
someFunction();
});
有沒有更好的方式來完成這項/什麼是我們的最佳做法?
編輯:上面的「身體」只是一個例子,我綁定到最深的元素,我可以
我正在寫一個PHP/jQuery的應用程序,我想知道許多事件處理程序是如何太多?多少個javascript事件處理程序太多了?
例如,在我的主要js文件我有大約15
$('body').on('click','.someElementClass',function(){
someFunction();
});
有沒有更好的方式來完成這項/什麼是我們的最佳做法?
編輯:上面的「身體」只是一個例子,我綁定到最深的元素,我可以
如果您的應用程序符合性能要求 - 那麼它是不是太多了。如果它不 - 那麼它太多了。那很簡單。
「有沒有更好的方法來完成這個/最好的做法是什麼?」
是的還有更好的方法。現在,您將所有點擊活動綁定到單個容器。
這意味着每.someElementClass
,需要調用的頁面上的每一次點擊,而實際上多次因爲該事件氣泡。
的正確方法是將處理程序綁定到包括每個給定選擇最深層嵌套容器。這樣,每個處理程序只在該頁面的該部分內部進行點擊調用。
「我想知道有多少事件處理程序太多了?」
當然,這將取決於應用的要求,但使用上述的方法將使得多個處理程序不太關心的存在。
編輯我原來的帖子。我對可能的最深的元素有約束力,身體只是一個例子。 – Nick
@尼克:那會徹底改變這個問題。 –
如果你的DOM是不會全頁面加載'$(」。someElementClass')之間進行改變。點擊(FN)'會更快。 –
我來這裏問同樣的問題,所以我不同意「封閉,沒有建設性」。感謝您的問候! – Shawn