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