XML DOM previousSibling అనునందనం
నిర్వచనం మరియు ఉపయోగం
previousSibling
అనునందనం ఎంపికచేసిన ఎలిమెంట్ యొక్క ముంది సమాన క్రమంలోని నోడ్ అనేది తిరిగి ఇస్తుంది (అదే ట్రీ స్థాయిలో ముంది నోడ్).
అటువంటి నోడ్ లేకపోతే, ఈ అనునందనం null అనేది తిరిగి ఇస్తుంది.
సంకేతాలు
elementNode.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>Next sibling: " + y.nodeName + " = " + y.childNodes[0].nodeValue; }