Google'ın CDN'sindeki en son jQuery sürümü


103

Google CDN'nin resmi belgesinde bunun jQuery'ye ait olduğunu okudum src:

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

Ancak, srcher sürüm güncellemesinde jQuery referansımı değiştirmek zorunda kalmak can sıkıcı .

Sürümü şu şekilde ayarlarsam buldum 1 Google'ın jQuery'nin en son sürümünü döndürdüğünü .

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

Yapılacak doğru şey bu mu? Google CDN'de barındırılan jQuery'nin en son sürümüne referans veren herhangi bir resmi URL var mı?


bu gönderinin daha eski olup olmadığını kontrol edin. Öyleyse, diğeri kopya
Martin Borthiry


Yanıtlar:


182

GÜNCELLEME 7/3/2014: Şu an itibariyle jquery-latest.jsartık güncellenmiyor. Gönderen jQuery blogda :

Bunu biliyoruz http://code.jquery.com/jquery-latest.jsEn popüler dosya olduğunu gösteren CDN istatistikleri nedeniyle kötüye kullanıldığını . Yalnızca geliştiriciler tarafından yerel bir kopya oluşturmak için kullanılıyorsa durum böyle olmazdı.

Her iki dosyayı da sonsuza kadar 1.11.1 sürümünde tutarak bu dosyayı ve küçültülmüş kopyayı güncellemeyi durdurmaya karar verdik.

Google CDN ekibi, yanlışlıkla web kesintilerini önlemek için bu çabamızda bize katıldı ve artık http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js adresindeki dosyayı güncellemiyor . Bu dosya da 1.11.1 sürümünde kilitli kalacaktır.

Aşağıdaki, şimdi tartışmalı olan cevap, tarihsel nedenlerden dolayı burada korunmaktadır.


Bunu yapma. Cidden, yapma.

JQuery'nin ana sürümlerine bağlanmak işe yarıyor, ancak bu kötü bir fikir - her ondalık güncellemede yepyeni özellikler eklenir ve kullanımdan kaldırılır. JQuery'yi kodunuzu TAMAMEN test etmeden otomatik olarak güncellerseniz , bazı kritik yöntemlerin API'sinin değişmesi durumunda beklenmedik bir sürpriz riskiyle karşılaşırsınız.

Yapmanız gereken şudur: jQuery'nin en son sürümünü kullanarak kodunuzu yazın. Test edin, hatalarını ayıklayın, üretime hazır olduğunda yayınlayın.

Ardından, jQuery'nin yeni bir sürümü çıktığında kendinize sorun: Kodumda bu yeni sürüme ihtiyacım var mı? Örneğin, daha önce var olmayan bazı kritik tarayıcı uyumluluğu var mı, yoksa çoğu tarayıcıda kodumu hızlandıracak mı?

Cevap "hayır" ise, kodunuzu en son jQuery sürümüne güncelleme zahmetine girmeyin. Bunu yapmak, kodunuza daha önce var olmayan YENİ hatalar bile ekleyebilir. . Hiçbir sorumlu geliştirici, başka bir siteden yeni kodu, kapsamlı bir şekilde test etmeden otomatik olarak dahil etmez.

HER ZAMAN jQuery'nin en son sürümünü kullanmak için iyi bir neden yoktur. Eski sürümler hala CDN'lerde mevcuttur ve sizin amacınız için çalışıyorlarsa, neden onları değiştirmeye zahmet edesiniz?


İkincil, ancak muhtemelen daha önemli bir sorun, önbelleğe almaktır. Birçok kişi bir CDN'de jQuery'ye bağlanır çünkü diğer birçok site bunu yapar ve kullanıcılarınızın bu sürümü önceden önbelleğe alma şansı yüksektir.

Sorun şu ki, önbelleğe alma yalnızca tam sürüm numarası sağlarsanız çalışır . Kısmi bir sürüm numarası sağlarsanız, uzak gelecekte önbelleğe alma gerçekleşmez - çünkü böyle olsaydı, bazı kullanıcılar aynı URL'den jQuery'nin farklı küçük sürümlerini alırdı. (1.7 bağlantısının bir gün 1.7.1'e ve ertesi gün 1.7.2'ye işaret ettiğini söyleyin. Tarayıcı bugün en son sürümü aldığından nasıl emin olacak? Cevap: önbelleğe alma yok.)

Aslında burada birkaç seçenek ve bunların sona erme ayarlarının bir dökümü var ...

http://code.jquery.com/jquery-latest.min.js (önbellek yok)

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

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

http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js (1 yıl)

Yani, jQuery'ye bu şekilde bağlanarak, aslında bir CDN kullanmanın ana nedenlerinden birini ortadan kaldırmış oluyorsunuz .


http://code.jquery.com/jquery-latest.min.js de her zaman beklediğiniz sürümü vermeyebilir. Bu yazı itibariyle, jQuery 2.x de piyasaya sürülmüş olsa da, jQuery 1.x'in en son sürümüne bağlanmaktadır. Bunun nedeni jQuery 1.x'in IE 6/7/8 dahil eski tarayıcılarla uyumlu olması ve jQuery 2.x'in uyumlu olmamasıdır . JQuery 2.x'in en son sürümünü istiyorsanız, (şimdilik) bunu açıkça belirtmeniz gerekir.

İki sürüm aynı API'ye sahiptir, bu nedenle uyumlu tarayıcılar için algısal bir fark yoktur. Ancak jQuery 1.x, 2.x'ten daha büyük bir indirmedir.


Bakış açınız için teşekkürler, ancak benim durumumda en son sürümü kullanmak daha iyidir. ancak, fikrinize kısmen katılıyorum, ancak bazı yeni sürümler de eski hataları düzeltiyor. Ayrıca, en son sürümün önbellekte olma olasılığı daha yüksektir, bu da cdn'nin avantajlarından biridir.
Martin Borthiry

2
Bunun iyi bir örneği, herhangi bir jquery <1.4'te gelişmekte ve ardından 1.4'ü geçmektedir. Geri aramada özelliklere erişimde ve ajax isteklerinin JSON verilerini işleme biçiminde değişiklikler oldu.
scrappedcola

sadece açıklığa kavuşturmak için .. Jquery'nin önemsiz kısmını kullanan tek bir sayfa istiyordum ... İyi yönünüzü anlıyorum, ancak Google'ın en son sürümü almak için bir url sunup sunmadığını bilmek istiyorum.
Martin Borthiry

4
@scrappedcola - jQuery 1.9 da birçok önemli değişiklik yaptı. JQuery'deki geriye dönük uyumluluk sorunları nedeniyle yıllar içinde birçok hatayla karşılaştım. Ve Blazemonger'in tavsiyesine kesinlikle katılıyorum. Hiçbir koşulda "en son jQuery" URL'sini göstermemelisiniz. JQuery ekibinin insafına kalmış olacaksınız ve yeni bir jQuery sürümü sitenizi kolayca bozabilir. Sadece olabilir gerçekleşmesi, ancak edecektir olasılıkla bir noktada olur.
Steve Wortham

Önbelleğe almanın sürüm ayrıntı düzeyine bağlı olduğunu öğrenmek güzel!
Tadas V.

8

Yayınlanıp yayınlanmadığını / nerede yayınlandığını bilmiyorum, ancak en son sürümü küçük olanı çıkararak ve sayıları oluşturarak edinebilirsiniz.

En son 1.8.x:

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

En son 1.x:

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

Ancak, bu bağlantıların tam sürüm numarasına göre çok daha kısa önbellek zaman aşımına sahip olduğunu unutmayın, bu nedenle kullanıcılarınız bunları istediğinizden daha fazla indiriyor olabilir. Daha fazla bilgi için Google CDN referanslarında jQuery 1.x.0'a bakın.


1
Alternatif olarak en son sürümü code.jquery.com/jquery.min.js adresinden edinebilirsiniz , genellikle diğer cdns'den birkaç gün önce güncellenir
Kevin B

En son 1.8.x'i bu şekilde açabilseniz de, benzer bağlantılardan sonra en son 1.9'u veya herhangi bir küçük sürüm numarasını alamazsınız. Ek olarak, "en son 1.x" bağlantısı şu anda en yenisi aslında 1.11.3 olduğunda 1.11.1'e işaret ediyor.
Blazemonger

@Blazemonger Bu doğru. Bunu cevapladıktan sonra bu değişti. Güncellemenizde harika bir açıklamanız var!
jrummell

8

Google tarafından barındırılan jQuery kitaplığı dışında jQuery CDN kullanmak isterseniz, bunu kullanmayı düşünebilir ve jQuery'nin en son sürümünü kullanmasını sağlayabilirsiniz:

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

Bu 2.0 yerine 1.9.1 çıktı
Phillip Senn

3
v2.x, v1.x ile uyumlu değildir. Bu url'yi gösteren herhangi bir site, v2'ye güncellendiyse, siteleri alt üst eder
Abdul Munim


2

Google tarafından barındırılan en son jquery sürümünü kullanmak için

İnsanlar:

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

  2. Snippet'i alın:

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

  1. Kodunuza ekleyin.
  2. Çalıştığından emin olun.

Botlar:

  1. Bir insanın yapmasını bekleyin.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.