242 votes

Où avez-vous d'inclure la librairie jQuery? Google JSAPI? CDN?

Il ya quelques façons d'inclure jQuery et jQuery UI et je me demandais ce que les gens sont à l'aide?

  • Google JSAPI
  • jQuery site
  • votre propre site/serveur
  • un autre CDN

J'ai récemment été à l'aide de Google JSAPI, mais j'ai trouvé que ça prend beaucoup de temps à l'installation d'une connexion SSL ou même seulement pour résoudre les google.com. J'ai été en utilisant la suite de Google:

<script src="https://www.google.com/jsapi"></script>
<script>
google.load('jquery', '1.3.1');
</script>

J'aime l'idée d'utiliser Google, donc il est mis en cache lorsque vous visitez d'autres sites et d'économiser de la bande passante à partir de notre serveur, mais si il continue à être la lenteur de la part du site, je peut changer le comprennent.

Qu'utilisez-vous? Avez-vous eu des problèmes?

Edit: Juste visité de jQuery site et ils utilisent la méthode suivante:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>

Edit2: Voici comment j'ai été notamment jQuery sans tous les problèmes de l'année dernière:

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

La différence, c'est la suppression de l' http:. Par la suppression de ce, vous n'avez pas besoin de vous soucier de commutation entre http et https.

153voto

Dscoduc Points 4066

Sans hésiter, je choisis d'avoir JQuery servi par API Google serveurs. Je n'ai pas aller avec le jsapi méthode, car je ne suis pas d'effet de levier, l'autre de l'API Google, par contre si jamais changé alors je pense qu'il serait...

D'abord: L'api de Google serveurs sont distribués à travers le monde, au lieu de mon unique emplacement du serveur: rapprochement des serveurs signifie généralement des temps de réponse plus rapide pour le visiteur.

Deuxième: Beaucoup de gens choisissent d'avoir JQuery hébergé sur Google, de sorte que quand un visiteur arrive sur mon site, ils peuvent déjà avoir le script JQuery dans leur cache local. Pré-mise en cache de contenu signifie généralement des temps de chargement plus rapide pour le visiteur.

Troisième: Mon hébergeur me charge de la bande passante utilisée. Aucun sens de consommer 18k par session utilisateur si le visiteur peut obtenir le même fichier ailleurs.

Je comprends que je place une partie de la confiance sur Google pour servir le bon fichier de script, et être en ligne et disponible. Jusqu'à ce point, je n'ai pas été déçu, avec l'aide de Google et continuera dans cette configuration jusqu'à ce qu'il fait sens de ne pas.

Une chose mérite d'être souligné... Si vous avez un mélange de sécurité et d'insécurité sur les pages de votre site, vous pourriez vouloir modifier dynamiquement le Google de la source pour éviter l'habitude d'avertissement de vous voir lors du chargement d'un contenu non sécurisé dans une page sécurisée:

Voici ce que j'ai trouvé:

<script type="text/javascript">
    document.write([
        "\<script src='",
        ("https:" == document.location.protocol) ? "https://" : "http://",
        "ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js' type='text/javascript'>\<\/script>" 
    ].join(''));
</script>

Mise à JOUR 9/8/2010- Quelques suggestions ont été faites pour réduire la complexité du code en supprimant le HTTP et HTTPS et simplement utiliser la syntaxe suivante:

<script type="text/javascript">
    document.write("\<script src='//ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js' type='text/javascript'>\<\/script>");
</script>

En outre, vous pouvez également changer l'url pour refléter le jQuery nombre majeur si l'on souhaite s'assurer que la dernière version Majeure de l'bibliothèques jQuery ont été chargés:

<script type="text/javascript">
    document.write("\<script src='//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js' type='text/javascript'>\<\/script>");
</script>

Enfin, si vous ne voulez pas utiliser Google et préférez jQuery vous pouvez utiliser les éléments suivants chemin de la source (gardez à l'esprit que jQuery ne prend pas en charge les connexions SSL):

<script type="text/javascript">
    document.write("\<script src='http://code.jquery.com/jquery-latest.min.js' type='text/javascript'>\<\/script>");
</script>

19voto

Franci Penov Points 45358

L'une des raisons que vous pourriez voulez héberger sur un serveur externe est de contourner les restrictions du navigateur de concurent connexions de serveur particulier.

Toutefois, étant donné que le fichier jQuery vous utilisez ne changera probablement pas très souvent, le cache du navigateur donnera un coup de pied dans, et que le point discutable pour la plupart.

Deuxième raison de l'héberger sur des serveurs externes est de diminuer le trafic vers votre propre serveur.

Toutefois, compte tenu de la taille de jQuery, les chances sont qu'il sera une petite partie de votre trafic. Vous devriez probablement essayer de l'optimiser votre contenu réel.

14voto

Mark Hurd Points 8193

jQuery 1.3.1 min est seulement 18k taille. Je ne pense pas que c'est trop d'un coup à poser sur le chargement initial de la page. Il va être mis en cache, après. En conséquence, j'ai l'héberger moi-même.

14voto

Philip T. Points 1493

Si vous souhaitez utiliser Google, le lien direct peut être plus réactive. Chaque bibliothèque a le chemin indiqué pour le fichier direct. C'est le chemin de jQuery

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

Il vous suffit de relire votre question, est-il une raison pour laquelle vous êtes à l'aide de https? C'est la balise de script Google listes dans leur exemple

<script src="http://www.google.com/jsapi"></script>
<script>

8voto

slacy Points 4417

Je ne voudrais pas tout public site que j'ai développé au dépend de tout site externe, et donc, je serais d'accueil jQuery moi-même.

Êtes-vous prêt à avoir une panne sur votre site quand les autres (Google, jquery.com, etc.) va en bas? Moins de dépendances est la clé.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X