Je sais qu'il existe des moyens de le charger dynamiquement dans la page , mais si je veux compresser mon code pour qu'il se charge encore plus rapidement, comment faire?
Je sais qu'il existe des moyens de le charger dynamiquement dans la page , mais si je veux compresser mon code pour qu'il se charge encore plus rapidement, comment faire?
Réponses:
Je recommande fortement Google Closure Compiler pour compresser le code JavaScript. Je l'utilise personnellement, et c'est aussi le compresseur officiel utilisé par le projet jQuery.
Ce projet peut faire beaucoup, mais les bases sont les suivantes:
java -jar closure.jar -js javascriptFile.js > javascriptFile.min.js
Utilisez gzip .
J'utilise le projet SquishIt de Justin Etheredge . C'est génial! Pour asp.net seulement cependant.
Lisez l' intro pour squishit le billet de blog .
Voici un exemple de code qui restituera une seule <script>
balise et une seule <link>
balise. Les deux pointeront vers un fichier JS / CSS combiné et réduit.
<%= 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")
%>
Il existe plusieurs outils très populaires pour compresser / réduire votre JavaScript et CSS.
Tous sont très puissants - vous pouvez facilement les comparer. Tous sont des outils de ligne de commande, ils peuvent donc être facilement intégrés automatiquement à votre exécution lorsque vous créez ou publiez votre site Web.
Vous pouvez également trouver de nombreux sites Web qui exécutent ces outils pour vous, ce qui vous évitera d'avoir à installer / configurer. Cela est également utile si vous n'êtes pas familier avec l'utilisation des outils de ligne de commande.
Personnellement, j'ai toujours utilisé YUI Compressor .
Ajoutez tout votre javascript à un seul fichier et compressez-le avec par exemple jsmin (http://www.crockford.com/javascript/jsmin.html). Faites cela également pour votre CSS, mais utilisez une autre technique de compression (suppression des espaces blancs). Comme il s'agit d'une tâche répétitive ennuyeuse, il existe des scripts disponibles qui feront exactement cela pour vous. J'utilise Django et j'utilise django-assets pour automatiser entièrement ce processus.
Vérifiez cette comparaison des minificateurs JS et CSS pour choisir ce qui vous convient le mieux -
Celui-ci utilise l'algorithme du compresseur YUI:
{1,2,3,}
qui détruiront complètement votre site Web sur un "certain navigateur" (ouais, quel autre navigateur pourrait être aussi stupide ??)