2010-09-03 8 views
9

Je développe un site web dynamique en utilisant jQuery et j'ai trouvé plusieurs plugins jQuery très utiles.Est-il sûr de fusionner plusieurs fichiers JavaScript en un?

Bien sûr, pour chaque plugin que j'ajoute, il y a un autre script à charger lors du chargement de la page. Je sais que pour que les pages soient rapides à charger, il vaut mieux avoir des ressources plus petites et/ou moins nombreuses.

Est-il prudent de fusionner tous ces fichiers plugin jQuery en un seul? Ai-je besoin de vérifier quelque chose avant de le faire, ou est-ce que cela peut même être fait rapidement par un script sur le serveur?

Répondre

4

Oui, c'est. C'est ce qui arrivera dans votre navigateur, de toute façon.

Vous pouvez également utiliser un outil de minimisation tel que le Google Closure Compiler ou le YUI Compressor pour réduire davantage la taille de votre code JavaScript.

+5

N'oubliez pas de conserver l'ordre des fichiers – Martin

0

Oui, puisque votre navigateur récupère et exécute chaque fichier, dans l'ordre dans lequel ils sont inclus, et que la concaténation de plusieurs scripts dans un fichier est la même, le navigateur récupère ce fichier et l'exécute.

7

Oui, il est sûr de les fusionner en un.

Et dans la plupart des cas, la page devrait se charger plus rapidement, mais dans certains cas, cela pourrait ralentir les choses. Par exemple:

  • Si votre site est destiné à des appareils mobiles tels que l'iPhone, un très grand fichier Javascript peut ne pas être mis en cache alors que plusieurs petits fichiers Javascript le seront. La taille exacte varie selon le téléphone et la version (et dans mon expérience, les terminaux BlackBerry sont particulièrement limités) voir par exemple Safari Cache size for iPhone 3.0
  • Si votre site est destiné aux navigateurs de bureau, en combinant tout votre Javascript dans un fichier lorsque vous n'avez pas besoin Cela pourrait rendre la première visite de votre utilisateur sur le site très lente. Si vous divisez votre Javascript en plusieurs fichiers et que vous ne les incluez qu'en cas de besoin, l'utilisateur ne sera pas frappé par un téléchargement initial massif et il est donc moins probable que sa première impression de votre site soit lente.