: How do I compress my JavaScript and/or CSS? I know that there are ways to dynamically load it into the page, but if I want to compress my code so it loads even faster, how do I do it?
I know that there are ways to dynamically load it into the page, but if I want to compress my code so it loads even faster, how do I do it?
More posts by @Si4351233
8 Comments
Sorted by latest first Latest Oldest Best
Check this comparison of JS & CSS minifiers to pick what suits you best -
www.phpied.com/reducing-tpayload/ www.phpied.com/css-minifiers-comparison/
There are several very popular tools for compressing/minifying your JavaScript and CSS.
Yahoo YUI Compressor
Microsoft AJAX Minifier
Google Closure Compiler (JavaScript-only)
All are very powerful -- you can find comparisons of them quite easily. All are command line tools, so they can be easily integrated into your run automatically when you build or publish your website.
You can also find many websites that run these tool for you, which will save you the time of having to install/configure. This also helps if you aren't familiar with using command line tools.
Personally, I've always used YUI Compressor.
If you want to compress the size of your Javascript files, you can use packer.
Add all your javascript to a single file and compress it with for example jsmin(http://www.crockford.com/javascript/jsmin.html). Do this as well for your CSS but use another compression technique (removing whitespace). Since this is a boring repeating task there are scripts available that will do just this for you. I use Django and use django-assets to fully automate this process.
I use Justin Etheredge's SquishIt project. It is awesome! For asp.net only however.
It uses YUI for CSS and Javascript compression.
It supports LESS
I believe it supports Google Closure
It is ridiculously easy to use.
Read the intro to squishit blog post.
Here's some sample code that will render a single <script> tag and a single <link> tag. Both of which will point to a combined and minified JS/CSS file.
<%= Bundle.JavaScript()
.Add("~/js/jquery-1.4.2.js")
.Add("~/js/jquery-ui-1.8.1.js")
.Render("~/js/combined_#.js")
%>
<%= Bundle.Css()
.Add("~/css/reset.css")
.Add("~/css/text.css")
.Add("~/css/960.css")
.Render("~/css/combined_#.css")
%>
I highly recommend Google Closure Compiler for compressing JavaScript code. I use it personally, and it is also the official compressor used by the jQuery project.
This project can do quite a lot, but the basics are this:
java -jar closure.jar -js javascriptFile.js > javascriptFile.min.js
Terms of Use Create Support ticket Your support tickets Stock Market News! © vmapp.org2024 All Rights reserved.