如何有效管理和优化你的网页插件? | 网页插件管理
682
2022-10-14
yuicompressor 批处理 压缩js和css
现在的系统为了得到更好的用户体验,都加入了ajax的特效,只要用到了ajax的代码,就会引来一大堆js代码,这些代码其实也挺占用带宽的,为了使网页加载得更快,决定在项目中才用网上流行的js压缩器来压缩代码。压缩后的代码基本可以抽掉40%左右的脂肪。找到几个压缩器,发现很多压缩器压缩后的js代码都出现这样或那样的问题
ESC 1.14 压缩后有些中文会出现问号(我的js代码是用utf-8格式)jsmin 压缩后有些中文会出现问号dean edwards的packer 压缩后的js代码会出现部分分号或大括号丢失,导致语法错误
最后找到了yuicompressor-2.3.4 感觉很好用,压缩后无损代码,而且连css也可以压缩,压缩的时候很多参数可以设置,可以制定js代码的编码格式等,java运行,本人写了一个bat批处理遍历制定文件夹里面的所有js和css文件进行压缩。我自己写的bat遍历文件压缩代码
(dir %1 /aa /b /s | findstr /e /c:"js") >tmp.txtfor /f %%i in (tmp.txt) do java -jar yuicompressor-2.3.4.jar --type js --charset utf-8 -o %%i.tmp %%i & copy %%i".tmp" %%i & del %%i".tmp"(dir %1 /aa /b /s | findstr /e /c:"css") >tmp.txtfor /f %%i in (tmp.txt) do java -jar yuicompressor-2.3.4.jar --type css --charset utf-8 -o %%i.tmp %%i & copy %%i".tmp" %%i & del %%i".tmp"
保存为 jscompressor.bat 运行的时候在输入 jscompressor (是我们指定的路径) 就可以批量进行压缩,压缩后替换压缩前的代码。
下面是一些参数的说明。==============================================================================YUI Compressor==============================================================================NAMEYUI Compressor - The Yahoo! JavaScript and CSS CompressorSYNOPSISUsage: java -jar yuicompressor-x.y.z.jar [options] [input file]Global Options-h, --help Displays this information--type Specifies the type of the input file--charset Read the input file using --line-break Insert a line break after the specified column number-v, --verbose Display informational messages and warnings-o Place the output into . Defaults to stdout.JavaScript Options--nomunge Minify only, do not obfuscate--preserve-semi Preserve all semicolons--disable-optimizations Disable all micro optimizationsDESCRIPTIONThe YUI Compressor is a JavaScript compressor which, in addition to removingcomments and white-spaces, obfuscates local variables using the smallestpossible variable name. This obfuscation is safe, even when using constructssuch as 'eval' or 'with' (although the compression is not optimal is thosecases) Compared to jsmin, the average savings is around 20%.The YUI Compressor is also able to safely compress CSS files. The decisionon which compressor is being used is made on the file extension (js or css)GLOBAL OPTIONS-h, --helpPrints help on how to use the YUI Compressor--line-breakSome source control tools don't like files containing lines longer than,say 8000 characters. The linebreak option is used in that case to splitlong lines after a specific column. It can also be used to make the codemore readable, easier to debug (especially with the MS Script Debugger)Specify 0 to get a line break after each semi-colon in JavaScript, andafter each rule in CSS.--type js|cssThe type of compressor (JavaScript or CSS) is chosen based on theextension of the input file name (.js or .css) This option is requiredif no input file has been specified. Otherwise, this option is onlyrequired if the input file extension is neither 'js' nor 'css'.--charset character-setIf a supported character set is specified, the YUI Compressor will use itto read the input file. Otherwise, it will assume that the platform'sdefault character set is being used. The output file is encoded usingthe same character set.-o outfilePlace output in file outfile. If not specified, the YUI Compressor willdefault to the standard output, which you can redirect to a file.-v, --verboseDisplay informational messages and warnings.JAVASCRIPT ONLY OPTIONS--nomungeMinify only. Do not obfuscate local symbols.--preserve-semiPreserve unnecessary semicolons (such as right before a '}') This optionis useful when compressed code has to be run through JSLint (which is thecase of YUI for example)--disable-optimizationsDisable all the built-in micro optimizations.
欢迎沟通及共同进步
越折腾越快乐!
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~