2010-02-05 55 views
1

我想減少一個站點的http請求數量,我很有辦法。 目前我們使用jqueryjquery-ui,它們被加載爲2個單獨的.js文件。將jquery和jquery-ui結合使用時的性能問題

我試圖將它們結合在一個文件(jquery-all.js)中,而不是使用組合文件。這可按預期工作,但爲頁面加載時間增加了大約1秒。

我已經嘗試使用縮小版本和文件的未縮小版本。爲了將它們組合起來,我將它們加載到文本編輯器中,並將jquery-ui的內容放在jquery文件的末尾並再次保存 - 這裏沒有什麼特別的意思。

性能問題發生在Firefox 3.5和3.6(尚未在其他任何地方測試)。操作系統:Windows 7和Windows XP。 Webserver在localhost上是Apache 2.2。

當瀏覽網站時,延遲很明顯,但Firebug Net面板和HttpFox都報告長時間延遲。

alt text http://img706.imageshack.us/img706/9264/97929632.png

的JavaScript後的圖像被舉起的年齡,這我能理解,尤其是在這個屏幕抓取是這兩個庫的unsing未壓縮的版本。頁面加載開始時的非常長的延遲是一個總的謎...

任何想法?

回答

0

您是否嘗試過使用Google託管版本的jQuery和jQuery UI?另外,不要在沒有使用它們的頁面上加載JavaScript,因爲這太浪費了。

真正的問題是您使用這些腳本的程度有多大?無論如何,你可以減少你使用它們的數量嗎?一旦你確定了你所使用的部分,你就可以冒險並從JavaScript文件中刪除所有不需要的東西。這將節省很多空間,儘管取決於您的經驗,但這可能相當困難。

+0

很好,他們需要所有在現場。是的,我可以使用谷歌託管的版本,但我想明白爲什麼把這兩個文件放入單個文件會比將其加載爲2個文件慢得多。 – 2010-02-05 10:26:03

+0

@rikh因爲即使當一個調用只需要其中一個文件,如果你合併它們,它最確保它已經下載了該文件。如果你將它們分開,那麼調用一個jQuery函數並不需要獲取整個jQuery UI文件。 – Cromulent 2010-02-05 11:13:55