Google के CDN पर नवीनतम jQuery का संस्करण


103

मैंने Google CDN के आधिकारिक दस्तावेज़ में पढ़ा कि यह srcjQuery के लिए है:

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

हालाँकि, srcप्रत्येक संस्करण अद्यतन में मेरे jQuery संदर्भ को बदलना कष्टप्रद है ।

मैंने पाया है कि अगर मैंने संस्करण सेट किया है 1तो Google jQuery का नवीनतम संस्करण लौटाएगा।

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

क्या यह सही काम है जिसे करना चाहिए? Google CDN पर होस्ट किए गए jQuery के नवीनतम संस्करण को संदर्भित करने के लिए कोई आधिकारिक URL है?


जाँच करें कि यह पोस्ट पुरानी है। तो, दूसरा डुप्लिकेट है
मार्टिन बोरथिरि

1
यह stackoverflow.com/questions/441412/… (14-जनवरी -2009 में पूछा गया) का एक डुप्लिकेट है
निक पियरपॉइंट

जवाबों:


182

अद्यतन 7/3/2014: अब के रूप में, jquery-latest.jsअब अद्यतन नहीं किया जा रहा है। से jQuery ब्लॉग :

हम जानते हैं कि http://code.jquery.com/jquery-latest.js का दुरुपयोग किया जाता है क्योंकि CDN आँकड़े इसे सबसे लोकप्रिय फ़ाइल दिखा रहे हैं। यह मामला नहीं होगा यदि यह केवल डेवलपर्स द्वारा एक स्थानीय प्रतिलिपि बनाने के लिए उपयोग किया जा रहा था।

हमने इस फाइल को अपडेट करने से रोकने का फैसला किया है, साथ ही दोनों फाइलों को हमेशा के लिए १.११.१ संस्करण पर रखते हुए, इसकी प्रतिलिपि बनाई गई है।

Google CDN टीम ने अनजाने वेब टूटने को रोकने के लिए इस प्रयास में हमारा साथ दिया और अब http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js पर फ़ाइल को अपडेट नहीं किया । वह फ़ाइल 1.11.1 संस्करण पर भी लॉक रहेगी।

निम्नलिखित, अब मूट, उत्तर ऐतिहासिक कारणों से यहां संरक्षित है।


यह मत करो। गंभीरता से, नहीं।

JQuery के प्रमुख संस्करणों से लिंक करना काम करता है, लेकिन यह एक बुरा विचार है - पूरी नई सुविधाओं को जोड़ा जाता है और प्रत्येक दशमलव अपडेट के साथ हटा दिया जाता है। यदि आप अपने कोड COMPLETELY का परीक्षण किए बिना jQuery को स्वचालित रूप से अपडेट करते हैं , तो कुछ अप्रत्याशित विधि के लिए एपीआई बदल गया है, तो आपको एक अप्रत्याशित आश्चर्य का खतरा है।

यहां बताया गया है कि आपको क्या करना चाहिए: jQuery के नवीनतम संस्करण का उपयोग करके अपना कोड लिखें। इसका परीक्षण करें, इसे डीबग करें, इसे तब प्रकाशित करें जब यह उत्पादन के लिए तैयार हो।

फिर, जब jQuery का एक नया संस्करण सामने आता है, तो अपने आप से पूछें: क्या मुझे अपने कोड में इस नए संस्करण की आवश्यकता है? उदाहरण के लिए, क्या कुछ महत्वपूर्ण ब्राउज़र संगतता है जो पहले मौजूद नहीं थी, या क्या यह अधिकांश ब्राउज़र में मेरे कोड को गति देगा?

यदि उत्तर "नहीं" है, तो अपने कोड को नवीनतम jQuery संस्करण में अपडेट करने से परेशान न हों। ऐसा करने से आपके कोड में नई त्रुटियां भी आ सकती हैं जो पहले मौजूद नहीं थीं । कोई भी ज़िम्मेदार डेवलपर अपने आप को पूरी तरह से परीक्षण किए बिना किसी अन्य साइट से नए कोड को स्वचालित रूप से शामिल नहीं करेगा।

वहाँ हमेशा बस jQuery के नवीनतम संस्करण का उपयोग करने के लिए कोई अच्छा कारण नहीं है। पुराने संस्करण अभी भी CDN पर उपलब्ध हैं, और यदि वे आपके उद्देश्यों के लिए काम करते हैं, तो उन्हें बदलने की जहमत क्यों उठाते हैं?


एक द्वितीयक, लेकिन संभवतः अधिक महत्वपूर्ण, मुद्दा कैशिंग है। कई लोग CDN पर jQuery से लिंक करते हैं क्योंकि कई अन्य साइटें करते हैं, और आपके उपयोगकर्ताओं के पास उस संस्करण के पहले से ही कैश होने का अच्छा मौका है।

समस्या यह है कि, कैशिंग केवल तभी काम करता है जब आप पूर्ण संस्करण संख्या प्रदान करते हैं । यदि आप एक आंशिक संस्करण संख्या प्रदान करते हैं, तो भविष्य में होने वाली कैशिंग नहीं होती है - क्योंकि यदि ऐसा होता है, तो कुछ उपयोगकर्ताओं को एक ही URL से jQuery के विभिन्न लघु संस्करण मिलेंगे। (यह कहें कि 1.7 अंक एक दिन के 1.7.1 और अगले दिन 1.7.2 के लिंक। ब्राउज़र कैसे सुनिश्चित करेगा कि यह आज नवीनतम संस्करण प्राप्त कर रहा है? उत्तर: कैशिंग नहीं।)

वास्तव में यहाँ कई विकल्पों और उनकी समाप्ति सेटिंग्स का टूटना है ...

http://code.jquery.com/jquery-latest.min.js (कोई कैश नहीं)

http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js (1 घंटा)

http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js (1 घंटा)

http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js (1 वर्ष)

तो, इस तरह से jQuery से जोड़कर, आप वास्तव में पहले स्थान पर एक CDN का उपयोग करने के प्रमुख कारणों में से एक को समाप्त कर रहे हैं ।


http://code.jquery.com/jquery-latest.min.js हमेशा आपको वह संस्करण नहीं दे सकता है जिसकी आप अपेक्षा करते हैं। इस लेखन के रूप में, यह jQuery 1.x के नवीनतम संस्करण से जोड़ता है, भले ही jQuery 2.x को भी जारी किया गया हो। ऐसा इसलिए है क्योंकि jQuery 1.x IE 6/7/8 सहित पुराने ब्राउज़रों के साथ संगत है, और jQuery 2.x नहीं है । यदि आप jQuery का नवीनतम संस्करण 2.x चाहते हैं, तो (अभी के लिए) आपको स्पष्ट रूप से निर्दिष्ट करने की आवश्यकता है।

दो संस्करणों में एक ही एपीआई है, इसलिए संगत ब्राउज़रों के लिए कोई अवधारणात्मक अंतर नहीं है। हालाँकि, jQuery 1.x 2.x से बड़ा डाउनलोड है।


आपकी बात के लिए धन्यवाद, लेकिन मेरे मामले में नवीनतम संस्करण का उपयोग करना बेहतर है। हालाँकि, मैं आपकी राय से आंशिक रूप से सहमत हूँ, लेकिन कुछ नए संस्करण पुराने कीड़े को भी ठीक करते हैं। इसके अलावा, नवीनतम संस्करण में कैश होने की अधिक संभावना है, यह सीडीएन लाभ में से एक है।
मार्टिन बोरथिरि

2
ऐसा होने का एक अच्छा उदाहरण किसी भी jquery में विकसित हो रहा है <1.4 फिर पिछले 1.4 को अपग्रेड करना। संपत्तियों तक पहुँचने में परिवर्तन हुए और कॉल में कैसे अजाक्स अनुरोधों ने JSON डेटा को संभाला।
scrappedcola

बस स्पष्ट करने के लिए .. मैं एक ही पृष्ठ के लिए पूछ रहा था जो jquery के तुच्छ भाग का उपयोग करता है ... मैं आपकी अच्छी बात समझता हूं, लेकिन मैं सिर्फ यह जानना चाहता हूं कि क्या Google नवीनतम संस्करण प्राप्त करने के लिए एक url पेश कर रहा है।
मार्टिन बोरथैरी

4
@scrappedcola - jQuery 1.9 ने बहुत से ब्रेकिंग परिवर्तन भी पेश किए। मैं jQuery में बैकवर्ड संगतता मुद्दों के कारण पिछले कुछ वर्षों में बहुत सारे बग में चला गया हूं। और मैं ब्लेज़मॉन्गर की सलाह से बिल्कुल सहमत हूँ। किसी भी परिस्थिति में आपको बस "नवीनतम jQuery" URL को इंगित नहीं करना चाहिए। आप jQuery टीम की पूर्ण दया पर होंगे, और एक नया jQuery रिलीज़ आसानी से आपकी साइट को तोड़ सकता है। न केवल यह हो सकता है, लेकिन यह संभवतः किसी बिंदु पर होगा।
स्टीव वॉर्थम

यह जानने के लिए अच्छा है कि कैशिंग संस्करण के विस्तार के स्तर पर आधारित है!
ताड़ास वी।

8

मुझे नहीं पता कि यह कहाँ / कहाँ प्रकाशित हुआ है, लेकिन आप नाबालिगों को छोड़ कर और संख्याएँ बनाकर नवीनतम रिलीज़ प्राप्त कर सकते हैं।

नवीनतम 1.8.x:

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

नवीनतम 1.x:

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

हालाँकि, यह ध्यान रखें कि इन लिंक्स का पूर्ण संस्करण संख्या की तुलना में बहुत कम कैश टाइमआउट है, इसलिए आपके उपयोगकर्ता उन्हें जितना चाहें उतना अधिक डाउनलोड कर सकते हैं। देखें jQuery 1.x.0 करने के लिए गूगल CDN संदर्भ में महत्वपूर्ण .0 अधिक जानकारी के लिए।


1
आप वैकल्पिक रूप से code.jquery.com/jquery.min.js से नवीनतम रिलीज़ प्राप्त कर सकते हैं। आमतौर पर यह अन्य सीडीएन से कुछ दिन पहले अपडेट हो जाता है
केविन बी

जब आप नवीनतम 1.8.x को इस तरह से खींच सकते हैं, तो आप इसी तरह के लिंक के बाद नवीनतम 1.9 या किसी भी मामूली संस्करण संख्या को नहीं खींच सकते। इसके अलावा, "नवीनतम 1.x" लिंक वर्तमान में 1.11.1 पर इंगित करता है जब नवीनतम वास्तव में 1.11.3 है।
ब्लेज़ेमॉन्गर

@Blazemonger यह सही है। इसका उत्तर देने के बाद मैं बदल गया। आपके अपडेट में आपकी बहुत अच्छी व्याख्या है!
jrummell

8

यदि आप Google द्वारा होस्ट की गई jQuery लाइब्रेरी के अलावा jQuery CDN का उपयोग करना चाहते हैं, तो आप इसका उपयोग करने पर विचार कर सकते हैं और सुनिश्चित करता है कि आप jQuery के नवीनतम संस्करण का उपयोग करें:

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

इसने 2.0 के बजाय 1.9.1 को खींचा
फिलिप सन्

3
v2.x v1.x के साथ संगत नहीं है। कोई भी साइट जो इस url की ओर इशारा कर रही है, वास्तव में उन साइटों को खराब कर देगी यदि इसे v2 में अपडेट किया गया था
अब्दुल मुनीम


2

Google द्वारा होस्ट किए गए नवीनतम jquery संस्करण का उपयोग करने के लिए

मनुष्य:

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

  2. स्निपेट प्राप्त करें:

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

  1. इसे अपने कोड में रखें।
  2. सुनिश्चित करें कि यह काम करता है।

बॉट:

  1. एक मानव के लिए प्रतीक्षा करें।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.