2012-11-22 73 views
1

我已經啓動了我們網站的重新設計,我第一次使用了相當多的Javascript。結合javascript文件

我已經瞭解到,我應該將所有的javascript和css合併到一個文件中(每個顯然),但是我知道我可以將css合併爲沒有問題的javascript,但我不確定。

我要負載:

jquery.min.js < - 我加載前兩名ajax.googleapis.com,是個不錯的主意

jQuery的ui.min.js

的JavaScript爲Facebook

一些爲谷歌加號按鈕

同Twitter的

一些谷歌分析

然後一些內聯的東西,以隱藏JavaScript用戶不應該看到和該類型的東西的div。

,你可以在這裏看到:traditionalirishgifts.c​​om

所以我能不能複製所有這些文件的內容粘貼到一個大文件。找到一些方法來縮小(還沒有完全查看)它。在我的頁面底部加載這一個文件,然後賓果?

+1

你可能會逃避,只是天真地將它們按照它們的依賴順序排列在一起。 –

+0

^是的小項目,就是我這樣做。只需創建一個批處理文件'cat',並通過NodeJS的'uglify'管理它。 'cat one.js two.js etc.js | uglify -o out.js' – elclanrs

+0

@anthony哇,很快!在我編輯之前,我需要整理格式!天真地捕捉它們?依賴性順序? –

回答

0

您應該始終能夠將所有外部JavaScript合併到一個文件中。您可以使用服務器端壓縮器將其緩存並作爲一個文件提供。它確實對文件施加了一些限制,比如哪個文件應該首先加載等等。另外,如果任何地方出現語法錯誤,它將完全崩潰。

請記住,像谷歌代碼第三方代碼不能混入英寸通常有一種身份驗證正在進行(或在URL中的API密鑰)。如果您嘗試緩存該代碼,則會在一段時間後停止工作。所以你需要保持這些獨立。

+0

我可以強加給你看看我的源代碼,並告訴我哪些FB等javascript我不能加載爲單個文件的一部分。但我可以複製和粘貼休息,這將工作?像我有一個只是$(function(){$('。inputsPriceRange')。hide(); $('#displaypricerange')。show();});所以在我看來,這只是一個沒有任何功能的函數? –

+0

網址現在在OP中。 –

+0

真的沒有任何第三方代碼。如果他們決定稍微改變他們的API,你可能仍然會嘗試舊版本,並且會以意想不到的方式崩潰。 – Halcyon

2

我想使用這個工具:http://jscompress.com/

JSCompress.com是一個在線的JavaScript壓縮機,使您可以 壓縮和壓縮JavaScript文件。壓縮的JavaScript文件 是生產環境的理想選擇,因爲它們通常會將文件大小減少30-90%。通過刪除網頁瀏覽器或訪問者所需的不是 的註釋和額外空格字符,可以實現大部分的文件大小縮減。