XML DOM nextSibling एट्रिब्यूट
व्याख्या और उपयोग
nextSibling
एट्रिब्यूट चयनित एलिमेंट के अगले बराबर नोड (एक ही ट्री स्तर में अगला नोड) को वापस करता है。
यदि ऐसा कोई नोड नहीं है, तो यह एट्रिब्यूट null वापस करता है。
व्याकरण
elementNode.nextSibling
ध्यान:फायरफॉक्स और अधिकांश अन्य ब्राउज़र खाली जगह या लाइन बदले को टेक्स्ट नोड के रूप में परिगणित करेंगे, जबकि इंटरनेट एक्सप्लोरर नहीं। इसलिए, नीचे दिए गए उदाहरण में, हम एक फ़ंक्शन का उपयोग करते हैं ताकि अगला बड़ा बाटा नोड के नोड टाइप को जाँचें।
एलिमेंट नोड का nodeType 1 है, इसलिए अगला बड़ा बाटा नोड एलिमेंट नोड नहीं होता है तो वह अगला नोड पर जाता है और उस नोड को जाँचता है कि वह एलिमेंट नोड है या नहीं। इसके बाद यह प्रक्रिया जारी रहेगी, जब तक कि अगला बराबर नोड (जो एलिमेंट नोड होना चाहिए) नहीं मिले। इस तरह, सभी ब्राउज़रों में परिणाम सही होगा।
सुझाव:ब्राउज़रों के बीच अंतर के बारे में अधिक जानकारी जानने के लिए XML DOM ट्यूटोरियल के DOM ब्राउज़र चैप्टर को देखें。
इंस्टांस
उदाहरण 1
नीचे कोड "books.xml" को xmlDoc में लोड करेगा और पहले <title> एलिमेंट से अगले समान स्तर के नोड को प्राप्त करेगा:
वार एक्सएचटीपी = नया XMLHttpRequest(); xhttp.onreadystatechange = function() { यदि (इस.readyState == 4 && इस.status == 200) { माइफ़न्क्शन(इस); } }; xhttp.open("GET", "books.xml", ट्रू); xhttp.send(); // अगले समान स्तर के नोड को एलिमेंट नोड है की जाँच करें फ़ंक्शन गेट_नेक्स्टसिबलब्रदर(न) { वार एक्स = न.nextSibling; जब तक (एक्स.nodeType != 1) { एक्स = एक्स.nextSibling; } वापस एक्स; } फ़ंक्शन माइफ़न्क्शन(एक्सडीओ) { वार एक्सडीओ = xml.responseXML; वार एक्स = xmlDoc.getElementsByTagName("title")[0]; वार य = get_nextsibling(x); document.getElementById("demo").innerHTML = x.nodeName + " = " + x.childNodes[0].nodeValue + "<br>अगला सिबलिंग: " + y.nodeName + " = " + y.childNodes[0].nodeValue; }
उदाहरण 2
प्रीवियूसिबलब्रदर विधि का उपयोग करके, नोड के पिछले समान स्तर के नोड को प्राप्त करें:
वार एक्सएचटीपी = नया XMLHttpRequest(); xhttp.onreadystatechange = function() { यदि (इस.readyState == 4 && इस.status == 200) { माइफ़न्क्शन(इस); } }; xhttp.open("GET", "books.xml", ट्रू); xhttp.send(); // पिछले समान स्तर के नोड को एलिमेंट नोड है की जाँच करें फ़ंक्शन गेट_प्रीवियूसिबलब्रदर(न) { वार एक्स = न.वैयूजीबलब्रदर; जब तक (एक्स.nodeType != 1) { एक्स = एक्स.previousSibling; } वापस एक्स; } फ़ंक्शन माइफ़न्क्शन(एक्सडीओ) { वार एक्सडीओ = xml.responseXML; वार एक्स = xmlDoc.getElementsByTagName("author")[0]; वार य = get_previoussibling(x); document.getElementById("demo").innerHTML = x.nodeName + " = " + x.childNodes[0].nodeValue + "<br>अगला बैठक: " + y.nodeName + " = " + y.childNodes[0].nodeValue; }