2010-03-15 31 views
5

我剛剛來到一個大型開發項目的結尾。我們的時間表很緊,所以很多優化都是「推遲」的。現在我們已經達到了最後期限,我們正在回頭嘗試優化事情。jQuery優化

我的問題是這樣的:在優化jQuery網站時,尋找什麼是最重要的東西。另外我很想聽聽有關優化jQuery的特別好建議的網站/列表。

我已經閱讀了一些文章,http://www.tvidesign.co.uk/blog/improve-your-jquery-25-excellent-tips.aspx是一個特別好的閱讀。

+2

+1對於「25個極好的提示」網站 – ram 2010-03-15 20:20:15

+0

精確複製:http://stackoverflow.com/questions/1587375/what-are-some-快速提示增加jQuery性能 – 2010-03-15 21:02:52

+0

我發現單一最佳優化是遵循id>元素名稱>類名稱選擇器優先順序。如果可能,儘可能使用id,否則使用元素,否則使用類。 #my_id比div.my_class好於.myclass – aepheus 2010-03-15 21:11:25

回答

1

主要是我看那個重複themselfs選擇..大多數時候,這些可以被保存到一個變量和反覆使用,例如:

$('.some_class').doSomthing(); 
$('.some_class').doSomethingElse(); 

可以變成:

selectedItems = $('.some_class'); 
selectedItems.doSomething(); selectedItems.doSomethingElse(); 

通過這種方式,選擇器遍歷DOM一次...然後您可以繼續使用該變量作爲jquery對象,這要感謝每個jquery方法返回jquery對象。

只是一個尖了許多在那裏的......

+1

或者進入'$('。some_class')。doSomething()。doSomethingElse()'。可能起初看起來很尷尬,但它是一個非常有用的功能。 – Felix 2010-03-15 20:48:46

+1

是的,當然你是對的 - 但它並不總是適用於所有情況......大部分情況下都是如此,但有些情況下可能需要單獨的操作 – Ken 2010-03-15 20:58:58

+0

儘管類似這樣會顯着幫助減少開銷(使一個選擇器調用而不是兩個)我猜想在許多情況下轉換爲$('td.some_class')會比鏈接獲得更多的獎金。 – aepheus 2010-03-16 15:41:26