2010-10-28 15 views
6

मैं बाहर एचटीएमएल 5 नए जावास्क्रिप्ट आदेशों की जाँच की गई थी और वहाँ के लिए कुछ इसी तरह है:JQuery भविष्य में मौजूद नहीं होगा?

var els = document.querySelectorAll("ul li:nth-child(odd)"); 

यह आपको सीएसएस वाक्य रचना से सभी तत्वों को खोजने के लिए अनुमति देता है। लेकिन मुझे यकीन है कि Jquery के पास कुछ भी समान है।

सवाल है, के रूप में ब्राउज़र बेहतर जावास्क्रिप्ट एपीआई रही है ...

  • JQuery भविष्य में मौजूद नहीं होगा? क्या अगले वर्षों तक JQuery को हमारी वेबसाइटों में रखना सुरक्षित है?
+5

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

+0

यदि कुछ भी हो, तो ये परिवर्तन भविष्य में jQuery को ** बेहतर ** प्रदर्शन करेंगे। JQuery 1.4.3 रिलीज नोट्स देखें, जो उल्लेख करता है कि उन्होंने querySelectorAll का उपयोग करना शुरू कर दिया है, जहां यह उपलब्ध है, और उन्होंने सफलतापूर्वक ब्राउज़र विक्रेताओं को एक मैसेज चयनकर्ता विधि शामिल करने के लिए याचिका दायर की। http://blog.jquery.com/2010/10/16/jquery-143-released/ – Yahel

+1

प्रासंगिक लिंक: http://youmightnotneedjquery.com/ –

उत्तर

17

jQuery सिर्फ चयनकर्ता इंजन (Sizzle) तुलना में बहुत अधिक है, और कड़ाके की धूप querySelectorAll()अगर यह उपलब्ध है संस्करण jQuery 1.4.3 के साथ शामिल के बाद से उपयोग करता है।

नहीं, यह कहीं भी नहीं जा रहा है, चयनकर्ता पहेली का केवल एक टुकड़ा हैं।

+0

हाँ, लेकिन चयनकर्ताओं हैं * सबसे बड़ी * "पहेली का एक टुकड़ा" , और यह jQuery को लोकप्रिय बनाता है, और यह वही टुकड़ा है जो आधुनिक वेब मानकों और वेब विकास पैटर्न द्वारा अप्रचलित हो रहा है, जैसे रिएक्ट जो डीओएम को और भी आगे बढ़ाता है। – Aaron

5

बेशक यह हमारी वेबसाइट पर JQuery रखने के लिए सुरक्षित है। याद रखें, आप लाइब्रेरी से लिंक करते हैं, और यह जावास्क्रिप्ट से आधारित है। इसे क्लाइंट साइड (जावास्क्रिप्ट के अलावा) पर किसी भी विशेष सॉफ्टवेयर की आवश्यकता नहीं है।

भविष्य में JQuery अप्रचलित होने के लिए, नहीं, नहीं, नहीं, नहीं। यह सिर्फ चयनकर्ताओं की तुलना में बहुत कुछ करता है।

1

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

स्वयं द्वारा चयनकर्ता उपयोगी नहीं हैं। आप उन तत्वों पर कार्रवाई निष्पादित करने के लिए चयनकर्ताओं का उपयोग करते हैं।

jQuery प्रदान करता है:

  • जावास्क्रिप्ट अमूर्त
  • एनीमेशन
  • यूआई नियंत्रण और विगेट्स (स्लाइडर, accordions, आदि)
+2

स्पष्ट होने के लिए, jQuery UI jQuery कोर में नहीं है, यह पूरी तरह से एक अलग परियोजना है। –

+1

हाँ, मुझे पता है। यह jQuery कोर का उपयोग करता है हालांकि –

9

ऐसा नहीं है कि jQuery से सिर्फ एक एक बहुत अधिक है सच है चयनकर्ता इंजन। लेकिन यह और क्या नहीं रही हो सकता है की एक बहुत कुछ की तरह प्रतीत होता है धार ब्राउज़रों खून बह रहा है, उदाहरण के लिए द्वारा:

एनिमेशन

ऐसे चेतन(), fadeOut(), आदि के रूप में jQuery के प्रभाव लिया जाता है ध्यान सीएसएस संक्रमण द्वारा।

अजाक्स

jQuery ऐसे IE के पुराने संस्करणों में ActiveXObject("Microsoft.XMLHTTP") बजाय XmlHttpRequest() का उपयोग कर के रूप में सार संक्षेप ब्राउज़र मतभेद, का ख्याल रखता है। यह फॉलबैक जल्दी से अनावश्यक हो रहा है।

jQuery का अजाक्स क्रॉस-डोमेन अजाक्स के लिए JSON-P भी प्रदान करता है। नवीनतम ब्राउजर में लागू किए गए उचित क्रॉस डोमेन XmlHttpRequest के साथ यह आवश्यक नहीं होगा।

घटना बाध्यकारी

jQuery दूर सार IE के attachEvent बनाम बाकी सब addEventListener की। लेकिन चूंकि आईई 9 मानक विधि प्रदान करेगा, वह अवशोषण भी अनावश्यक हो जाएगा।

यह सब का मतलब है कि "कच्चे जावास्क्रिप्ट करने के लिए नीचे गिर" अतीत की तुलना में कम बर्बर हो जाएगा। हालांकि, लाइब्रेरी रखना अभी भी अच्छा है। JQuery के केंद्रीय प्रतिभा को लें, सेटों का विचार समानांतर में कार्य करता है। jQuery में आप लिखें:

jQuery("#something").hide(); 

कच्चे जावास्क्रिप्ट में आप लिखते हैं:

var things = document.querySelectorAll("#something"); 
if (things.length > 0) { 
    things[0].style.display = "none"; 
} 

अनुग्रह इस तरह की डोम तरीकों builtin से पूरी तरह से उपलब्ध नहीं होगा।

+1

बाध्यकारी तब भी बेहतर होता है जब ईवेंट प्रतिनिधिमंडल सामान होता है .live –

+0

हाँ अच्छा बिंदु। मैं HTML5 योजनाओं में कुछ भी नहीं सोच सकता जो लाइव() कार्यक्षमता प्रदान करता है। – jpsimons

संबंधित मुद्दे