2010-06-23 13 views
9

मुझे लगता है कि $('.selector', myContext) और myContext.find('.selector') समान जानकारी प्राप्त करने के दो समान तरीके हैं। क्या आप एक व्यावहारिक कारण हैं जब आप एक दूसरे के ऊपर उपयोग करेंगे? शायद गति?

उत्तर

10

$('.selector', myContext) और $(myContext).find('.selector') पूरी तरह से बराबर हैं:

jQuery 1.4.2 स्रोत (core.js) से:

//... 

// HANDLE: $(expr, context) 
// (which is just equivalent to: $(context).find(expr) 
} else { 
    return jQuery(context).find(selector); 
} 

//... 
+0

मैं एक ब्लॉग पोस्ट या कुछ और, शायद जॉन Resig, कि "संदर्भ" दूसरी पैरामीटर शैली deprecates से याद करते हैं। – Pointy

+0

इस उत्तर के लिए धन्यवाद – Jason

+1

@Pointy अगर आपको एक लिंक मिल सकता है, तो क्या आप यहां पोस्ट करना चाहेंगे? मैंने संदर्भ कोड को पहले और मेरे कोडिंग प्रथाओं को अनुशंसित तरीके से ट्यून करना पसंद किया है। – jinglesthula

1

पहले कोड के थोड़ा कम वर्ण शामिल है, लेकिन है कि एक ही बात

के अलावा अन्य
3

आंतरिक रूप से, चयनकर्ता संदर्भ .find() विधि,के साथ लागू किया गया हैतो $ ('अवधि', यह) $ (यह) के बराबर है। ढूँढें ('अवधि')।

से: http://api.jquery.com/jQuery/#jQuery1

+0

धन्यवाद, इसकी सराहना करें – Jason

0

एक नया jQuery वस्तु निर्माता बना दिया जाता है यह पता लगाने की क्या में पारित किया गया था का प्रयास करता है संदर्भ एक DOMElement jQuery $ (संदर्भ) में $ (चयनकर्ता, संदर्भ) बदल देती है।। (चयनकर्ता) पाते हैं। आप इस परिवर्तन को स्वयं बनाकर कुछ स्ट्रिंग पार्सिंग सहित निर्माता के अधिकांश तर्क से बच सकते हैं। (पोस्ट का अनुसरण करने से अंश: http://engineeredweb.com/blog/10/12/3-tips-make-your-jquery-selectors-faster/ )

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