मैं कुछ जावास्क्रिप्ट विकसित कर रहा हूं जो प्रोटोटाइप.जेएस या JQuery के साथ काम करना चाहिए, इस प्रकार मुझे प्राथमिक लाइब्रेरी का उपयोग करने की पहचान करने के लिए कुछ तरीका चाहिए। मैं उसे कैसे कर सकता हूँ?
उत्तर
आप इस तरह jQuery के लिए जाँच कर सकते हैं:
if (window.$ === window.jQuery)
ठीक है, आप jQuery की उपस्थिति की जांच कर सकता है:
if(window.jQuery !== "undefined")
{
// jQuery Yay!
}
और फिर इसे $
if(window.jQuery === window.$)
{
// jQuery Yay!
}
को असाइन किया गया है, तो
संभवतया आप पहले उदाहरण में 'टाइपोफ़' का अर्थ रखते हैं। – bobince
jQuery noconflict मदद कर सकता है? फिर आप प्रोटोटाइप के लिए jQuery और $
के लिए jQuery
का उपयोग कर सकते हैं।
@SLaks और @Chacha102 jQuery का पता लगाने के लिए सही हैं, लेकिन आप यह सुनिश्चित करें कि यदि $
समारोह jQuery से नहीं है, आप कर सकते हैं PrototypeJS से आता है बनाना चाहते हैं तो:
if (typeof $ == 'function') {
if ($.fn && $.fn.jquery) { // $.fn.jquery contains the version number
// jquery
} else if (window.Prototype && Prototype.Version) {
// prototype
}
}
यह लिखें किसी पर निर्भरता के बिना लाइब्रेरी और इसे jQuery और प्रोटोटाइप दोनों के साथ ठीक काम करना चाहिए;)
गंभीरता से, प्रत्येक ब्राउज़र के लिए कोड की प्रत्येक पंक्ति के तीन अलग-अलग बदलावों को लिखने से बचने के लिए इन पुस्तकालयों के मुख्य बिंदुओं में से एक नहीं है? एक से अधिक लाइब्रेरी के अनुरूप करने के लिए कोड लिखना काफी मूर्खतापूर्ण लगता है।
वैसे भी, लगभग 5 सेकंड के लिए या तो लाइब्रेरी के लिए प्रलेखन को देखते हुए आपको यह संकेत देना चाहिए कि jq $ के पास कौन सा गुण होगा जो $ pt होगा। इससे पता चलता है कि आपने ढांचे के बीच मतभेदों को देखने के लिए वास्तव में परेशान नहीं किया है (जो स्पष्ट रूप से उन्हें अलग करने का सबसे अच्छा तरीका है, है ना?)। क्या आप वाकई जानते हैं कि आप स्वयं को क्या प्राप्त कर रहे हैं?
के रूप में कई उल्लेख किया है:
var whosThatDollarSign = typeof window.$=='undefined' ? 'none' : (window.$==window.jQuery ? 'jQuery' : 'not jQuery')
अगर मैं यह सब शुरू नहीं कर पाता तो मैं इसे वोट दूंगा अंत में उपदेश। –
चिंता न करें, मैं इस पर कोई नींद नहीं खो रहा हूं। –
मैं कुछ जावास्क्रिप्ट है कि या तो Prototype.js या JQuery साथ काम करना चाहिए विकासशील कर रहा हूँ, इस प्रकार मैं किसी तरह क्या उपयोग में प्राथमिक पुस्तकालय है की पहचान करने की जरूरत है। मैं उसे कैसे कर सकता हूँ?
आपका प्रश्न संदिग्ध है, मेरे लिए दो स्पष्ट अर्थ हैं इसलिए मैं दोनों का जवाब दूंगा।
यदि आपका मतलब है कि आप लिखना कोड चाहते हैं जो इस पर ध्यान दिए बिना कि jQuery या प्रोटोटाइप.जेएस का उपयोग किया गया है, तो जवाब यह है कि कोड लिखना काफी आसान है जो पुस्तकालयों के बावजूद काम करता है या होगा , लदा हुआ। तो यह जानने की कोई आवश्यकता नहीं है कि किस का उपयोग किया गया है।
यदि आपका मतलब है कि आप दो अलग-अलग स्क्रिप्ट लिखने जा रहे हैं, एक jQuery के लिए और एक प्रोटोटाइप.जेएस के लिए, तो, आप जिस पर "पहचान" करते हैं, उसके आधार पर, आप एक स्क्रिप्ट या दूसरे लोड करेंगे, फिर आप अपने कोड को बहुत खराब वास्तुकला पर आधारित करना। उन पुस्तकालयों में से कोई भी ब्राउज़र के विशेष रूप से विस्तृत चयन का समर्थन नहीं करता है और जब भी कोई नया संस्करण आता है, तब भी उन्हें अपडेट करने की आवश्यकता होती है, यहां तक कि "लोकप्रिय" वे भी समर्थन करते हैं।
अलग-अलग स्क्रिप्ट का उपयोग करके दोनों का समर्थन करने का प्रयास करने पर एक चल रहे रखरखाव सिरदर्द बन जाएगा - दो बार। या शायद यह तुम्हारा इरादा है।
-
रोब
- 1. विम: स्टेटसलाइन के लिए उपयोगकर्ता किस मोड में है, इसका पता लगाने के लिए कैसे?
- 2. "सीवी :: स्मृति स्थान पर अपवाद" का कारण क्या है इसका पता लगाने के लिए?
- 3. फ़ाइल/माइम प्रकार का पता लगाने के लिए नेट लाइब्रेरी
- 4. मैगेंटो टेम्पलेट कहां से कॉल कर रहा है, इसका पता लगाने के लिए कैसे?
- 5. स्वाइप पता लगाने के लिए
- 6. एक्सएचआर कैश्ड संसाधन कब देता है इसका पता लगाने के लिए कैसे?
- 7. WP7 में थीम कब बदलती है इसका पता लगाने के लिए कैसे?
- 8. आईओएस: एनीमेशन कब समाप्त होता है इसका पता लगाने के लिए कैसे?
- 9. यह पता लगाने के लिए कि क्या जेएमएस कनेक्शन है?
- 10. बैकबोन रूटिंग यह पता लगाने के लिए कि आगे या पीछे दबाया गया है
- 11. रोम प्रदाता कौन है यह पता लगाने के लिए कैसे?
- 12. जेएफआरएएम का पता लगाने के लिए कैसे बंद है?
- 13. जावा नंबर लंबा है। Max_value - कैसे पता लगाने के लिए?
- 14. क्या मूल करने के लिए मैप किया गया है, कैसे पता लगाने के लिए
- 15. क्या ईमेल पता सत्यापन के लिए कोई PHP लाइब्रेरी है?
- 16. ड्रैग के बाद 'फ्लिक' का पता लगाने के लिए कैसे?
- 17. कैसे पता लगाने के लिए "tcmalloc: बड़े alloc ...." की तरह
- 18. क्या SQLite के लिए एक विस्तारित फ़ंक्शन लाइब्रेरी है?
- 19. T-SQL समारोह का पता लगाने के लिए कैसे
- 20. का पता लगाने के लिए Ctrl +
- 21. स्ट्रीम के अंत का पता लगाने के लिए कैसे?
- 22. यह पता लगाने के लिए कि विंडोज
- 23. यह पता लगाने के लिए कि क्या NSScrollView वर्तमान में
- 24. जावास्क्रिप्ट यह पता लगाने के लिए कि क्या उपयोगकर्ता टैब
- 25. स्प्रिंग ऑटोवायर वास्तव में क्या पता लगाने के लिए?
- 26. मॉडल से विशेषता परिवर्तन का पता लगाने के लिए कैसे?
- 27. का पता लगाने के लिए कि क्या छवि जावास्क्रिप्ट
- 28. यह पता लगाने के लिए कि क्या स्पिइट को pygame
- 29. डेटा अखंडता के लिए डेटा भ्रष्टाचार/जांच का पता लगाने के लिए एक उपयुक्त हैश फ़ंक्शन?
- 30. क्या किसी को पता है कि विंडोज यूआई के लिए गिटहब के पीछे तकनीकें क्या हैं?
क्या होगा अगर वे दोनों लोड कर रहे हैं? –