2008-09-06 17 views
67

मैं यहाँ सही शब्दावली को खोजने के लिए संघर्ष कर रहा हूँ से आधार तत्व हो रही है, लेकिन अगर आप jQuery वस्तु है ...एक jQuery वस्तु

$('#MyObject') 

... यह संभव आधार तत्व को निकालने के लिए है? मतलब, इसके बराबर:

document.getElementById('MyObject') 

उत्तर

54

हां, .get(index) का उपयोग करें। documentation के अनुसार:

प्रत्येक jQuery वस्तु अंतर्निहित डोम नोड्स .get() विधि एक्सेस देता है।

95
$('#MyObject').get(0); 

मुझे लगता है कि तुम क्या चाहते हो। मुझे लगता है कि आप इसे नियमित सरणी की तरह भी संदर्भित कर सकते हैं:

$('#MyObject')[0]; 

लेकिन मुझे यकीन नहीं है कि यह हमेशा काम करेगा या नहीं। पहले वाक्यविन्यास के साथ चिपकाओ।

+0

जब मैं कंसोल.लॉग '$ (' # MyObject) .get (0) 'एचटीएमएल टैग के अंदर' क्रोम का उपयोग करते समय 'पहले' और 'बाद में' है। कोई विचार क्या मतलब है? –

9

एक jQuery ऑब्जेक्ट तत्वों का एक सेट है। आपके मामले में, एक तत्व का एक सेट। यह कुछ अन्य पुस्तकालयों से अलग है, जो एकल तत्वों को लपेटते हैं और चयनकर्ताओं के लिए वैकल्पिक वाक्यविन्यास प्रदान करते हैं जो एकाधिक मैचों को वापस करते हैं।

Aaron W और VolkerK पहले ही समझाया गया है कि सेट में पहले (अनुक्रमणिका 0) तत्व को कैसे एक्सेस किया जाए।

5

मैं सभी ब्राउज़रों मैं अपने बॉक्स पर उपलब्ध है पर हारून के बयान का परीक्षण किया:

$('#MyObject').get(0); 

बनाम

$('#MyObject')[0]; 

जहां तक ​​मेरा बता सकते हैं, यह व्यक्तिगत का केवल एक मामला है वरीयता।

कार्यात्मक रूप से, ये दोनों कथन दोनों मौजूदा और गैर-मौजूदा तत्वों के बराबर हैं। मैंने निम्न ब्राउज़रों का परीक्षण किया: क्रोम 27.0, एफएफ 21.0, आईई 10, आईई 9, आईई 8, आई 7, आईई 6।

मेरे द्वारा चलाए गए गति परीक्षणों में, यह कहना हमेशा संभव नहीं था कि कौन सा बदलाव तेजी से था; नतीजा हमेशा एक ही ब्राउज़र पर लगातार नहीं था। गति परीक्षण के लिए, मैंने केवल मौजूदा तत्वों का परीक्षण किया। मेरे परीक्षण परिणाम here हैं।

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