jQuery एक सरणी जैसी वस्तु है जिसमें आपके सभी मिलान किए गए तत्व शामिल हैं। कई बार, jQuery डिफ़ॉल्ट रूप से अपने परिवर्तन पहला तत्व को संग्रह में लागू होंगे:
$("li").css("display"); // display val of first element, not all elements.
हालांकि कई li
तत्वों सकता है पाया गया है, jQuery वस्तु के बारे में पहले परोक्ष हमें बताता है।हम स्पष्ट रूप से ऐसा करने के लिए यह हिदायत सकता $.get
विधि का उपयोग कर:
$("li").get(0); // Returns first DOM element
$("li")[0]; // Also returns first DOM element
हम nodeName
जांच कर सकता है यह सत्यापित करने के लिए:
$("li").get(0).nodeName; // LI
$("li")[0].nodeName; // LI
अगर हम कवर के तहत देखें, तो हम देख सकते हैं कि $.get()
है कार्यान्वित:
get: function(num) {
return num == null
? this.toArray()
: (num < 0
? this[ this.length + num ]
: this[ num ]);
}
इस से
हम देख सकते हैं कि जब कोई तर्क प्रदान की जाती है, तत्व का पूरा संग्रह में बदल जाती है एक सरणी, और फिर लौट आया। जब कोई तर्क प्रदान किया जाता है, उदाहरण के लिए 2
, हम तत्व को इंडेक्स 2 के रूप में वापस करते हैं। यदि -2
प्रदान किया गया है, तो यह लंबाई में जोड़ा जाता है (मान लीजिए कि लंबाई 5, 5 + (- 2) 3 है) और परिणामी संख्या है सूचकांक के रूप में इस्तेमाल किया।
अपने विशेष उदाहरण के संबंध में
तो:
var shuffle = $("#shuffle")[0];
shuffle.play();
jQuery किसी भी तत्व shuffle
की आईडी महत्व न हो पाने के लिए प्रयोग किया जाता है। यह jQuery सरणी जैसी वस्तु देता है। लेकिन आपकी play()
विधि jQuery ऑब्जेक्ट पर मौजूद नहीं है, यह #shuffle
ऑब्जेक्ट पर मौजूद है। इस प्रकार, आपको संग्रह में पहला तत्व प्राप्त करने की आवश्यकता है।
आप $.get(0)
का उपयोग कर सकते हैं, हालांकि हमने अभी देखा है, यह सिर्फ एक और कदम जोड़ देगा। आंतरिक रूप से, jQuery उसी कोड को निष्पादित करेगा जो आप ऊपर कर रहे हैं, [0]
।
http://stackoverflow.com/questions/1302428/what-does-jquery-actually-return – Jack
अब तक सभी उत्तरों के लिए धन्यवाद। मुझे लगता है मुझे विस्तार करना चाहिए। मुझे लगता है कि एक प्रकार की सरणी थी। लेकिन आप यह कहने के लिए कहां जाएंगे कि ऑडियो टैग का पहला तत्व प्ले बटन है? – Anatoly
निफ्टीड्यूड के उत्तर की जांच करें। यह वास्तव में एक सरणी नहीं है, यह एक JQuery ऑब्जेक्ट है जिसमें सरणी जैसी संरचना होती है जिसमें केवल 1 तत्व होता है (जैसा कि आपने 'आईडी चयनकर्ता' का उपयोग किया था)। '[0]' जोड़कर JQuery ऑब्जेक्ट के बजाय DOM तत्व लौटाता है, जिससे आप '.play()' विधि का उपयोग कर सकते हैं। –