दिलचस्प पोस्ट
कमांड प्रॉम्प्ट से एक एपीके फाइल स्थापित करें? एक ListBox के साथ WPF ListBox – यूआई वर्चुअलाइजेशन और स्क्रॉलिंग निर्दिष्ट तारों को छोड़कर सब कुछ मैच करें सी ++: क्लास डेटा सदस्य को पॉइंटर ":: *" Memcached vs APC जो मुझे चुनना चाहिए? jQuery ट्रिगर जब DIV के 2 / 3s व्यूपोर्ट में हैं आस्थगित वस्तुओं क्या हैं? रिक्त स्ट्रिंग पर "विभाजन" क्यों नॉन रिक्त सरणी वापस आती है? नियमित अभिव्यक्ति नकारात्मक दिखने वाला पायथन में पूर्णांक कैसे गोल करें JSON स्ट्रिंग को जावास्क्रिप्ट सरणी में कनवर्ट करें JQuery का उपयोग करने वाले तत्वों में आप छद्म वर्ग कैसे जोड़ सकते हैं? सी ++ वर्चुअल / शुद्ध वर्चुअल समझाया दो पंक्तियों पर पाठ ओवरफ़्लो एल्हीसिस एक टपल के आसपास कोष्ठक कब आवश्यक हैं?

TypeError: JQuery फ़ंक्शन को कॉल करते समय $ फ़ंक्शन नहीं है

मैं इस तरह एक jQuery आवरण का उपयोग कर रहा है कि एक WordPress प्लगइन में एक सरल jQuery स्क्रिप्ट है:

$(document).ready(function(){ // jQuery code is in here }); 

मैं वर्डप्रेस डैशबोर्ड के भीतर से इस स्क्रिप्ट को बुला रहा हूं और jQuery के फ्रेमवर्क लोड किए जाने के बाद इसे लोड कर रहा हूं।

जब मैं फ़ायरबग में पृष्ठ की जांच करता हूं तो मैं लगातार त्रुटि संदेश प्राप्त करता रहता हूं:

TypeError: $ फ़ंक्शन नहीं है

$ (Document) .ready (function () {

क्या मुझे इस फ़ंक्शन में स्क्रिप्ट को लपेटना चाहिए:

 (function($){ // jQuery code is in here })(jQuery); 

मुझे इस त्रुटि को कई बार पड़ा है और मुझे यकीन नहीं है कि इसे कैसे संभालना है

किसी भी तरह की सहायता का स्वागत किया जाएगा।

Solutions Collecting From Web of "TypeError: JQuery फ़ंक्शन को कॉल करते समय $ फ़ंक्शन नहीं है"

डिफ़ॉल्ट रूप से जब आप WordPress में jQuery को एन्क्यू करते हैं, तो आपको jQuery का उपयोग करना होगा, और $ का उपयोग नहीं किया जाता है (यह अन्य पुस्तकालयों के साथ संगतता के लिए है)।

function में इसे लपेटने का आपका समाधान ठीक काम करेगा, या आप jQuery को किसी अन्य तरीके से लोड कर सकते हैं (लेकिन संभवतः WordPress में कोई अच्छा विचार नहीं है)

यदि आपको document.ready उपयोग करना होगा। पहले से ही, आप वास्तव में फ़ंक्शन कॉल में $ कर सकते हैं:

 jQuery(function ($) { ... 

इसे इसे ठीक करना चाहिए:

 jQuery(document).ready(function($){ //you can now use $ as your jQuery object. var body = $( 'body' ); }); 

बस रखो, वर्डप्रेस अपने स्क्रिप्टिंग को चलाने से पहले चलाता है और वे $ var को छोड़ देते हैं, जिससे वह अन्य पुस्तकालयों के साथ टकराने न पाए। यह संपूर्ण समझ में आता है, क्योंकि वर्डप्रेस को सभी प्रकार की वेब साइटों, ऐप और निश्चित रूप से ब्लॉग्स के लिए उपयोग किया जाता है।

अपने दस्तावेज़ों से:

वर्डप्रेस के साथ शामिल jQuery के पुस्तकालय को नोकन्फिक्ट () मोड पर सेट किया गया है (देखें wp-includes / js / jquery / jquery.js) यह अन्य जावास्क्रिप्ट पुस्तकालयों के साथ संगतता समस्याओं को रोकने के लिए है, जो कि वर्डप्रेस लिंक कर सकते हैं।

NoConflict () मोड में, jQuery के लिए वैश्विक $ शॉर्टकट उपलब्ध नहीं है …

आप इस तरह के विरोधाभास से बच सकते हैं

 var jq=jQuery.noConflict(); jq(document).ready(function(){ alert("Hi this will not conflict now"); jq('selector').show(); }); 

यह समाधान मेरे लिए काम किया

 ;(function($){ // your code })(jQuery); 

क्लोजर के अंदर अपना कोड ले जाएं और jQuery बजाय $ उपयोग करें

मुझे https://magento.stackexchange.com/questions/33348/uncaught-typeerror-undefined-is-not-a-function———jquery-plugin-in- में उपरोक्त समाधान मिला

… बहुत ज्यादा खोज के बाद

इसे इस्तेमाल करे:

 <script language="JavaScript" type="text/javascript" src="jquery/jquery.js"></script> <script> jQuery.noConflict(); (function ($) { function readyFn() { // Set your code here!! } $(document).ready(readyFn); })(jQuery); </script> 

आपको फ़ंक्शन में $ देना होगा ()

 <script> jQuery(document).ready(function($){ // jQuery code is in here }); </script> 
 var $=jQuery.noConflict(); $(document).ready(function(){ // jQuery code is in here }); 

अश्विनी पंवार और सिस्को के उत्तर में क्रेडिट: https://stackoverflow.com/a/29341144/3010027

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

यदि आप jQuery के encapsulation का उपयोग करते हैं तो यह इस मामले में मदद नहीं करनी चाहिए। कृपया इसे प्रयास करें क्योंकि मुझे लगता है कि यह सुंदर और अधिक स्पष्ट है, लेकिन अगर jQuery परिभाषित नहीं है, तो आपको समान त्रुटियां मिलेंगी।

अंत में … jQuery वर्तमान में परिभाषित नहीं है

मेरे लिए क्या काम किया आयात करने वाली पहली पुस्तकालय क्वेरी लाइब्रेरी है और ठीक है, तो jQuery.noConflict () विधि को कॉल करें।

 <head> <script type="text/javascript" src="jquery.min.js"/> <script> var jq = jQuery.noConflict(); jq(document).ready(function(){ //.... your code here }); </script> 
 <script> var jq=jQuery.noConflict(); (function ($) { function nameoffunction() { // Set your code here!! } $(document).ready(readyFn); })(jQuery); 

अब jQuery के स्थान पर jq का उपयोग करें

आप इस मुद्दे पर आते हैं जब आपका फ़ंक्शन नाम और फ़ाइल में आईडी नामों में से एक समान है। बस सुनिश्चित करें कि फाइल में आपके सभी आईडी नाम अद्वितीय हैं

उपयोग

 jQuery(document). 

के बजाय

 $(document). 

या

फ़ंक्शन के भीतर, $ अंकों की उम्मीद के मुताबिक jQuery

 (function ($) { $(document). }(jQuery));