web-dev-qa-db-fra.com

Dernière version de jQuery sur le CDN de Google

J'ai lu dans le document officiel du CDN de Google qu'il s'agissait du src de jQuery:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script>

Cependant, il est ennuyeux de devoir changer de référence jQuery src à chaque mise à jour de version.

J'ai constaté que si je définissais la version sur 1, alors Google renvoyait la dernière version de jQuery.

http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js
/*! jQuery v1.8.2 jquery.com | jquery.org/license */

Est-ce la bonne chose à faire? Existe-t-il une adresse URL officielle pour référencer la dernière version de jQuery hébergée sur le CDN de Google?

99
Martin Borthiry

UPDATE 7/07/2014: À partir de maintenant, jquery-latest.js n'est plus mis à jour. Depuis le blog jQuery :

Nous savons que http://code.jquery.com/jquery-latest.js est victime d’abus en raison des statistiques CDN qui indiquent que c’est le fichier le plus populaire. Ce ne serait pas le cas si les développeurs ne l’utilisaient que pour en faire une copie locale.

Nous avons décidé d'arrêter de mettre à jour ce fichier, ainsi que la copie réduite, en conservant les deux fichiers à la version 1.11.1 pour toujours.

L’équipe Google CDN s’est jointe à nous dans le cadre de cet effort visant à prévenir les ruptures de sites Web par inadvertance et ne met plus à jour le fichier à partir de http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js . Ce fichier restera verrouillé à la version 1.11.1 également.

La réponse suivante, désormais théorique, est conservée ici pour des raisons historiques.


Ne fais pas ça. Sérieusement, ne le fais pas.

Les liens vers les versions principales de jQuery fonctionnent, mais c'est une mauvaise idée: de toutes nouvelles fonctionnalités sont ajoutées et déconseillées à chaque mise à jour décimale. Si vous mettez à jour jQuery automatiquement sans tester votre code COMPLÈTEMENT, vous risquez une surprise inattendue si l'API d'une méthode critique a été modifié.

Voici ce que vous devriez faire: écrivez votre code en utilisant la dernière version de jQuery. Testez-le, corrigez-le, publiez-le quand il est prêt pour la production.

Puis, lorsqu'une nouvelle version de jQuery est disponible, demandez-vous: Ai-je besoin de cette nouvelle version dans mon code? Par exemple, existe-t-il un navigateur essentiel? une compatibilité qui n'existait pas auparavant, ou va-t-il accélérer mon code dans la plupart des navigateurs?

Si la réponse est "non", ne mettez pas à jour votre code avec la dernière version de jQuery. Cela pourrait même ajouter de NOUVELLES erreurs à votre code qui n'existaient pas auparavant . Aucun développeur responsable n'inclut automatiquement le nouveau code provenant d'un autre site sans le tester de manière approfondie.

Il n'y a tout simplement aucune raison d'utiliser TOUJOURS la dernière version de jQuery. Les anciennes versions sont toujours disponibles sur les CDN, et si elles fonctionnent pour vos besoins, alors pourquoi se donner la peine de les remplacer?


Un problème secondaire, mais peut-être plus important, est la mise en cache. De nombreuses personnes se connectent à jQuery sur un CDN, à l'instar de nombreux autres sites, et vos utilisateurs ont de bonnes chances d'avoir cette version déjà mise en cache.

Le problème est, la mise en cache ne fonctionne que si vous fournissez un numéro de version complet . Si vous fournissez un numéro de version partiel, la mise en cache lointaine ne se produira pas, car certains utilisateurs obtiendraient différentes versions mineures de jQuery à partir de la même URL. (Dites que le lien vers 1,7 point vers 1.7.1 un jour et 1.7.2 le jour suivant. Comment le navigateur s'assurera-t-il de disposer de la dernière version aujourd'hui? Réponse: pas de cache.)

En fait voici une ventilation de plusieurs options et leurs paramètres d'expiration ...

http://code.jquery.com/jquery-latest.min.js (pas de cache)

http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js (1 heure)

http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js (1 heure)

http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js (1 an)

Ainsi, en vous connectant à jQuery de cette manière, vous éliminez l’une des principales raisons d’utiliser un CDN en premier lieu.


http://code.jquery.com/jquery-latest.min.js ne vous donnera pas toujours la version que vous attendez. A ce jour, il est lié à la dernière version de jQuery 1.x, même si jQuery 2.x a également été publié. En effet, jQuery 1.x est compatible avec les anciens navigateurs, notamment IE 6/7/8, et jQuery 2.x n’est pas . Si vous voulez la dernière version de jQuery 2.x, alors (pour le moment) vous devez l'indiquer explicitement.

Les deux versions ont la même API, il n'y a donc pas de différence de perception pour les navigateurs compatibles. Cependant, jQuery 1.x est un téléchargement plus volumineux que 2.x.

180
Blazemonger

Je ne sais pas si/où il est publié, mais vous pouvez obtenir la dernière version en omettant les numéros mineurs et les numéros de build.

Dernier 1.8.x:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js"></script>

Dernier 1.x:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>

Cependant, gardez à l'esprit que ces liens ont un délai d'expiration du cache beaucoup plus court qu'avec le numéro de version complet, de sorte que vos utilisateurs peuvent les télécharger plus que vous ne le souhaitez. Voir Les références cruciales .0 dans Google CDN font référence à jQuery 1.x. pour plus d'informations.

8
jrummell

Si vous souhaitez utiliser un CDN jQuery autre que la bibliothèque jQuery hébergée par Google, vous pouvez envisager d'utiliser ceci et assure utilise la dernière version de jQuery:

<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
8
Abdul Munim

Pour utiliser la dernière version de jquery hébergée par Google

Humains:

  1. https://developers.google.com/speed/libraries/#jquery

  2. Obtenez l'extrait de code:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

  1. Mettez-le dans votre code.
  2. Assurez-vous que cela fonctionne.

Bots:

  1. Attendez qu'un humain le fasse.
1
Bob Stein

Voici un lien mis à jour.

Il y a mis à jour de temps en temps, continuez simplement à vérifier la dernière version.

1
user0910