2011-02-04 54 views
7

我知道你們中的很多人會說。這是一個愚蠢的問題,或者這可能不是合適的論壇,或者取決於應用程序等。我應該加載整個jQuery UI JS/CSS還是隻加載我在某個頁面上需要的部分?

我只是想知道我是否有自定義主題,以後可能會更改它是一個好主意將jQuery UI分開,我的意思是將JS類和CSS放在更小的塊(類似可拖放等文件)中,並且只包含我在特定頁面上需要的或將它們放在一起並在每個頁面上加載整個UI。兩者都有積極和消極的一面。我只是不確定哪個更好。

您的意見是什麼。任何不同的方法可能?

回答

4

我個人的看法是,如果你想保持最新在未來,這將是容易得多保留jQuery UI文件完成,否則在將來更新時您將不得不花費時間分割新版本。

如果有,你知道你不會使用,你可以通過簡單地選擇要使用的功能去除download期間這些功能。

我也認爲加載時間是微不足道的,一旦瀏覽器加載腳本,它可能會緩存它的副本,因此用戶不會重新加載每個頁面的腳本。另外服務器只需要提供兩個文件,而不是可能爲多個文件提供服務的開銷。

如果您想爲腳本添加額外的功能,您也不需要記住是否已經加載了所需的js/css零件文件,這也有助於未來開發您的站點腳本。

2

我認爲如果你加載整個jQuery ui js/css會更好,因爲如果將來如果你想在jquery中做一些新的事情,那麼你必須再看看那些需要做的事情東西,你必須作出額外的努力,把這些代碼塊放在你的js文件中,所以我認爲loading the entire jquery will be better approach!!

1

加載整個jQuery UI JS和CSS,但要確保JS只包含你需要的模塊。

即。如果您不在網站的任何位置使用Draggable或Droppable,請不要包含它!

即使你不是每個頁面上的每個模塊,你將從第一頁命中時緩存整個JS(相對於多個頁面上多個不同的較小文件)和較少的HTTP請求(一個大文件與許多小文件)將彌補它。

1

不是一個愚蠢的問題,是合適的論壇,但它取決於應用程序!

我認爲一般來說最好的解決方案是儘量減少客戶端下載文件的請求和大小,但同時要確保你是開發者。可以輕鬆替換和更改部分代碼,並確保您的客戶端獲得這些更新。

爲此,您真正需要的是自動組合腳本/ css的部署過程和服務器端過程的組合,還允許您在更改這些資產時禁用客戶端緩存。您應該儘可能多地從CDN那裏獲得服務。您還需要確保您的網絡服務器在這些資產上設置了過期標頭。

根據服務器端框架,其中一些可能會爲您處理。

例如這裏是github上怎麼做(做?),它與軌道 https://github.com/blog/551-optimizing-asset-bundling-and-serving-with-rails

相關問題