Versão mais recente do jQuery no CDN do Google


103

Li no documento oficial do Google CDN que este é o srcto jQuery:

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

No entanto, é irritante ter que mudar minha srcreferência de jQuery a cada atualização de versão.

Descobri que, se definir a versão para 1, o Google retorna a versão mais recente do jQuery.

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

Esta é a coisa certa a fazer? Existe algum URL oficial para fazer referência à versão mais recente do jQuery hospedada no Google CDN?


verifique se este post é mais antigo. Então, a outra é a duplicata
— Martin Borthiry

1
Esta é uma duplicata de stackoverflow.com/questions/441412/… (perguntado em 14 de janeiro de 2009)
— Nick Pierpoint

Respostas:


182

ATUALIZAÇÃO 03/07/2014: A partir de agora, jquery-latest.jsnão está mais sendo atualizado. Do blog da jQuery :

Sabemos que http://code.jquery.com/jquery-latest.js é abusado por causa das estatísticas do CDN mostrando que é o arquivo mais popular. Isso não seria o caso se estivesse sendo usado apenas por desenvolvedores para fazer uma cópia local.

Decidimos parar de atualizar este arquivo, bem como a cópia minimizada, mantendo ambos os arquivos na versão 1.11.1 para sempre.

A equipe do Google CDN se juntou a nós nesse esforço para evitar quebras inadvertidas da web e não atualiza mais o arquivo em http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js . Esse arquivo também ficará bloqueado na versão 1.11.1.

A seguinte resposta, agora discutível, é preservada aqui por razões históricas.


Não faça isso. Sério, não.

Vincular às versões principais do jQuery funciona, mas é uma má ideia - novos recursos inteiros são adicionados e descontinuados a cada atualização decimal. Se você atualizar o jQuery automaticamente sem testar seu código COMPLETAMENTE , você arrisca uma surpresa inesperada se a API de algum método crítico mudar.

Aqui está o que você deve fazer: escreva seu código usando a versão mais recente do jQuery. Teste, depure e publique quando estiver pronto para produção.

Então, quando uma nova versão do jQuery for lançada, pergunte-se: Eu preciso dessa nova versão em meu código? Por exemplo, há alguma compatibilidade crítica de navegador que não existia antes ou isso irá acelerar meu código na maioria dos navegadores?

Se a resposta for "não", não se preocupe em atualizar seu código para a versão mais recente do jQuery. Fazer isso pode até adicionar NOVOS erros ao seu código que não existiam antes . Nenhum desenvolvedor responsável incluiria automaticamente um novo código de outro site sem testá-lo completamente.

Simplesmente não há um bom motivo para SEMPRE usar a versão mais recente do jQuery. As versões antigas ainda estão disponíveis nos CDNs e, se funcionarem para seus objetivos, por que se preocupar em substituí-las?


Um problema secundário, mas possivelmente mais importante, é o cache. Muitas pessoas criam links para jQuery em um CDN porque muitos outros sites o fazem, e seus usuários têm uma boa chance de já ter essa versão armazenada em cache.

O problema é que o armazenamento em cache só funciona se você fornecer um número de versão completo . Se você fornecer um número de versão parcial, o armazenamento em cache em um futuro distante não acontecerá - porque, se isso acontecer, alguns usuários obteriam diferentes versões secundárias do jQuery do mesmo URL. (Digamos que o link para 1,7 aponta para 1.7.1 um dia e 1.7.2 no dia seguinte. Como o navegador se certificará de que está recebendo a versão mais recente hoje? Resposta: sem armazenamento em cache.)

Na verdade, aqui está uma análise de várias opções e suas configurações de expiração ...

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

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

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

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

Portanto, ao vincular ao jQuery dessa forma, você está, na verdade, eliminando um dos principais motivos para usar um CDN em primeiro lugar.


http://code.jquery.com/jquery-latest.min.js também pode não fornecer a versão que você espera. No momento em que este livro foi escrito, ele se vincula à versão mais recente do jQuery 1.x, embora o jQuery 2.x também tenha sido lançado. Isso ocorre porque o jQuery 1.x é compatível com navegadores mais antigos, incluindo IE 6/7/8, e o jQuery 2.x não é . Se você deseja a versão mais recente do jQuery 2.x, então (por enquanto) você precisa especificar isso explicitamente.

As duas versões têm a mesma API, portanto, não há diferença de percepção para navegadores compatíveis. No entanto, jQuery 1.x é um download maior que 2.x.


Obrigado pelo seu ponto de vista, mas no meu caso é melhor usar a versão mais recente. no entanto, concordo parcialmente com sua opinião, mas algumas novas versões também corrigem bugs antigos. Além disso, a versão mais recente tem mais probabilidade de estar no cache, que é um dos benefícios do cdn.
— Martin Borthiry

2
um bom exemplo disso acontecendo é desenvolver em qualquer jquery <1.4 e depois atualizar para 1.4. Houve mudanças nas propriedades de acesso e como as solicitações ajax manipulavam os dados JSON no retorno de chamada.
— scrappedcola

só para esclarecer .. Eu estava pedindo uma única página que use parte trivial do jquery ... Eu entendo seu ponto positivo, mas eu só quero saber se o google está oferecendo uma url para obter a versão mais recente.
— Martin Borthiry

4
@scrappedcola - o jQuery 1.9 também introduziu várias alterações importantes. Eu encontrei muitos bugs ao longo dos anos devido a problemas de compatibilidade com versões anteriores do jQuery. E eu concordo totalmente com o conselho de Blazemonger. Sob nenhuma circunstância você deve simplesmente apontar para o URL "mais recente do jQuery". Você estaria totalmente à mercê da equipe jQuery, e um novo lançamento do jQuery poderia facilmente quebrar seu site. Não apenas poderia acontecer, mas provavelmente acontecerá em algum momento.
— Steve Wortham

bom saber que o cache é baseado no nível de detalhe da versão!
— Tadas V.

8

Não sei se / onde está publicado, mas você pode obter a versão mais recente omitindo os números secundários e de compilação.

1.8.x mais recente:

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

Último 1.x:

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

No entanto, lembre-se de que esses links têm um tempo limite de cache muito mais curto do que o número da versão completa, portanto, seus usuários podem estar baixando-os mais do que você gostaria. Consulte The .0 crucial nas referências de CDN do Google para jQuery 1.x.0 para obter mais informações.


1
Como alternativa, você pode obter a versão mais recente em code.jquery.com/jquery.min.js, ela geralmente é atualizada alguns dias antes dos outros cdns
— Kevin B

Embora você possa obter a versão 1.8.x mais recente dessa maneira, não é possível obter a versão 1.9 mais recente ou qualquer número de versão secundária com links semelhantes. Além disso, o link "1.x mais recente" atualmente aponta para 1.11.1 quando o mais recente é, na verdade, 1.11.3.
— Blazemonger

@Blazemonger Correto. Isso mudou depois que eu respondi isso. Você tem uma ótima explicação em sua atualização!
— jrummell

8

Se você deseja usar o jQuery CDN diferente da biblioteca jQuery hospedada pelo Google, você pode considerar usar isso e garantir o uso da versão mais recente do jQuery:

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

Isso puxou 1.9.1 em vez de 2.0
— Phillip Senn

3
v2.x não é compatível com v1.x. Qualquer site que aponte para este url irá, na verdade, bagunçar os sites se tiver sido atualizado para v2
— Abdul Munim


2

Para usar a versão mais recente do jquery hospedada pelo Google

Humanos:

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

  2. Obtenha o snippet:

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

  1. Coloque no seu código.
  2. Certifique-se de que funciona.

Bots:

  1. Espere um humano fazer isso.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.