अस्वीकरण: घर
पर इस कोशिश मत करो क्यों, अगर मैं jQuery का उपयोग कर रहा, $($)
पेज फ्रीज करता है?
अस्वीकरण: घर
पर इस कोशिश मत करो क्यों, अगर मैं jQuery का उपयोग कर रहा, $($)
पेज फ्रीज करता है?
$($)
$(document).ready($)
के लिए शॉर्टकट है। तो, यह फ़ंक्शन चलाएगा (जब डोम तैयार हो या सीधे जब यह पहले से ही मामला हो)।
.ready
को पारित फ़ंक्शन सुविधा के लिए jQuery फ़ंक्शन पारित किया गया है (विशेष रूप से उपयोगी जब आप noConflict
मोड में हैं)। तो, $($)
$
पर $
के साथ तर्क के रूप में कॉल करेगा - और सबकुछ फिर से होगा, जो अंतहीन पुनरावर्तन है।
एक अन्य स्पष्टीकरण:
$($)
कहते हैं।ready
सूची में फ़ंक्शन तर्क ($
) जोड़ता है।ready
सूची में कॉल करें"।ready
सूची में एकमात्र फ़ंक्शन $
है, इसलिए यह $
पर कॉल करता है।$
फ़ंक्शन को उन कार्यों के तर्क के रूप में पास करना चाहिए।$
पर $
के साथ तर्क के रूप में कहते हैं।$
फ़ंक्शन एक फ़ंक्शन को इसके तर्क के रूप में देखता है, लेकिन क्योंकि डोम तैयार है, यह फ़ंक्शन को सीधे कॉल करता है (इसके लिए प्रतीक्षा करने के लिए कुछ भी नहीं है)।$
फ़ंक्शन को $
के साथ तर्क के रूप में जाना जाता है।'$ ($) $ (दस्तावेज़) के लिए एक शॉर्टकट है। पहले से ही? –
@ लाइटनेसरेसेसिन ऑर्बिट - हाँ - '$ (func)' '$ (दस्तावेज़) के लिए शॉर्टकट है .ready (func)'। – pimvdb
आप सभी सुरक्षा जांच के साथ सोचेंगे, यह हम जोड़ना चाहते हैं ... –
अब यह है कि मैं "jQueryception" कहता हूं।
आप jQuery के भीतर पूरी jQuery लाइब्रेरी को कॉल कर रहे हैं।
अधिक जानकारी;
जब आप "$" (jQuery लाइब्रेरी द्वारा jQuery कोर फ़ंक्शन के रूप में परिभाषित) कहते हैं तो यह jQuery को प्रारंभ करता है और परिभाषित फ़ंक्शन को कॉल करने का प्रयास करता है यदि उसके पास है। जब आप वास्तव में "$ ($)" कहते हैं; आप jQuery के अंदर jQuery को कॉल करेंगे और यह बार-बार jQuery को कॉल करेगा।
jQuery 1.7.1 स्रोत कोड से;
// HANDLE: $(function)
// Shortcut for document ready
} else if (jQuery.isFunction(selector)) {
return rootjQuery.ready(selector);
}
और
rootjQuery = jQuery(document);
आप देख सकते हैं, जब आप $ ($) कहते हैं; यह आपके फ़ंक्शन के नाम से jQuery को कॉल करने का प्रयास करता है और यदि आप इसे jQuery के साथ दोबारा कॉल करते हैं तो वही बात अंतहीन हो जाएगी जैसा मैंने पहले समझाया है।
$
jQuery
फ़ैक्टरी फ़ंक्शन का उपनाम है।
jQuery
फ़ैक्टरी फ़ंक्शन, जब पहले पैरा के रूप में फ़ंक्शन पारित किया गया, तो उस कार्य को document.ready
पर चलाता है और jQuery
को इसके पहले पैरामीटर के रूप में पास करता है।
इस प्रकार आप document.ready
पर पहुंचने पर एक अनंत रिकर्सन के साथ समाप्त होते हैं।
दस्तावेज़ लोड होने के बाद इसे कंसोल से चलाने पर यह कैसे काम करता है (उसी परिणाम के साथ)? –
@GGG यदि 'document.ready' पहले ही पहुंच चुका है, तो 'jQuery' आगे बढ़ता है और आमंत्रण पर दिए गए फ़ंक्शन को चलाता है। – JAAulde
आह, निश्चित रूप से ... –
डॉलर एक समारोह है। यदि आप इसे स्वयं कहते हैं तो यह अंतहीन रिकर्सन में चलता है। अस्वीकरण के लिए – Demnogonis
+1! – charlietfl
इस प्रश्न को सुरक्षा की आवश्यकता क्यों है? –