我正在研究一個包含大約一打.js文件和可能有六打.css文件的單頁網站。在壓縮之前凝聚CSS和JS?工具?最佳實踐?
大多數.js文件都是jQuery插件。 除了基本的CSS文件,CSS文件是用於相應的jQuery插件。
YUI Compressor似乎是壓縮CSS和JS文件的最愛。但是,它只壓縮單個文件。
我也想結合我的文件和(理想情況下)結束與一個.js和一個.css文件(都壓縮)。
是否有任何首選的工具可以讓您自動將.js和.css文件合併爲一個文件,然後通過YUI壓縮器運行?
我正在研究一個包含大約一打.js文件和可能有六打.css文件的單頁網站。在壓縮之前凝聚CSS和JS?工具?最佳實踐?
大多數.js文件都是jQuery插件。 除了基本的CSS文件,CSS文件是用於相應的jQuery插件。
YUI Compressor似乎是壓縮CSS和JS文件的最愛。但是,它只壓縮單個文件。
我也想結合我的文件和(理想情況下)結束與一個.js和一個.css文件(都壓縮)。
是否有任何首選的工具可以讓您自動將.js和.css文件合併爲一個文件,然後通過YUI壓縮器運行?
我結束了在此選項絆腳石:
這是一個批處理文件,結合本地版本的串聯,YUI壓縮器和Dean Edward的Packer。儘管如此,我無法讓派克在本地工作。它不斷腐蝕我的.js。
所以,我跳過那部分,然後通過在線Packer運行我的YUI壓縮代碼,只看到壓縮進一步增加1%,所以只是省略了Packer階段。
最後,我的解決方案使用具有稍微修改批處理文件中的上面鏈接指令:
類型.. \ JS-在*> jb.js Java的罐子.. \衣\建立\ yuicompressor- 2.4.2.jar jb.js -o jb-yui.js
感謝所有其他(有效)解決方案。很多很好的信息!
你可能想看看鏈輪(http://www.getsprockets.com/)。
看起來不錯!唉,它是Ruby,所以可能不適合我們的工作流程,但很好的信息。 – 2009-09-12 14:47:35
我前幾天才問這個問題。累了淘寶網後,我想出了這個hackish(windows批處理文件)解決方案。
@echo off
set TUNA_ROOT=C:\path\to\webroot
set YUI_COMPRESSOR_PATH=C:\path\to\yuicompressor-2.4.2\build
set TEMP_JS_FILE=%TUNA_ROOT%\scripts\all_scripts_temp.js
set OUTPUT_JS_FILE=%TUNA_ROOT%\scripts\tuna_min.js
if exist "%TEMP_JS_FILE%" del "%TEMP_JS_FILE%"
if exist "%OUTPUT_JS_FILE%" del "%OUTPUT_JS_FILE%"
type "%TUNA_ROOT%\Scripts\MicrosoftAjax.js" >> "%TEMP_JS_FILE%"
echo. >> "%TEMP_JS_FILE%"
echo. >> "%TEMP_JS_FILE%"
type "%TUNA_ROOT%\Scripts\MicrosoftMvcAjax.js" >> "%TEMP_JS_FILE%"
echo. >> "%TEMP_JS_FILE%"
echo. >> "%TEMP_JS_FILE%"
rem ...and so on...
java -jar "%YUI_COMPRESSOR_PATH%\yuicompressor-2.4.2.jar" -v --charset utf-8 -o "%OUTPUT_JS_FILE%" "%TEMP_JS_FILE%"
if exist "%TEMP_JS_FILE%" del "%TEMP_JS_FILE%"
但我真的很喜歡它,如果有更自動的方式做事。
感謝分享!我會玩。 – 2009-09-12 14:48:06
如果你知道一點,PHP,我發現這是最好的方式:http://www.thedanglybits.com/2007/06/21/minify-your-external-javascript-and-css-with-php/
不錯的選擇。我會探索!不過,我確實在尋找桌面解決方案,因爲我正在使用各種不同的服務器。如果我們可以在發送到服務器之前在桌面上處理它,那最好。 – 2009-09-12 14:49:11
如果你運行一個本地的Apache + PHP服務器,它會工作。 我可能可以將它編譯成exe文件。你使用Windows,對吧? – 2009-09-12 16:20:17
好的。下載並提取它:http://ramblingwood.com/sandbox/js-minifier/js-minifier.zip 只需將.js文件拖放到它上面(可以做多個),它會創建一個名爲total .js與原始文件在同一個目錄中,並將它們全部壓縮到該文件中。 如果存在,它會附加到已存在的total.js文件中。 – 2009-09-13 02:30:35
我使用本網站幾乎完全壓縮我的JS和CSS文件:
http://www.lotterypost.com/js-compress.aspx
http://www.lotterypost.com/css-compress.aspx
我會在縮小JS和CSS的頂部添加gzip壓縮。 – Eimantas 2009-09-11 21:26:42
我也在尋找一個解決方案,最好在PHP,這將讓我運行腳本,並在我的本地開發服務器上這樣做,我可以保持它分開,並結合和壓縮之前上傳到活服務器 – JasonDavis 2009-09-11 21:26:46