XML DOM previousSibling کا نمائندہ

تعریف اور استعمال

previousSibling اگر اس کا اپنائی جانا null نہیں تو اس کا اپنائی جانا ان کا نود جو ان کے پاس سے قریب ہوتا ہے، نود (ایک ہی درجے کی سطح میں کسی اگلے نود) واپس دیتا ہے。

اگر ایسا نود موجود نہیں ہوتا تو اس کا اپنائی جانا null واپس دیتا ہے。

قواعد

nodeObject.previousSibling
نکات اور تذکرات

توجہ:فائر فاکس اور زیادہ تر دیگر براوزر خالی یا نئی لائن کو فائل نود کے طور پر دیکھتے ہیں، جبکہ انٹر نیٹ ایکسپلورر نہیں دیکھتا۔ نیچے کے مثال میں، ہم ایک فونکشن کا استعمال کرتے ہیں جس میں پچھلے برابر نود کا نود کا قسم چکا جاتا ہے。

عنصر نود کا nodeType 1 ہوتا ہے، لہذا اگر پچھلے برابر نود ایک عنصر نود نہیں ہوتا تو اس کو اگلے نود تک منتقل کر دیا جاتا ہے اور اس کو جانا جاتا ہے کہ وہ ایک عنصر نود ہوتا ہے یا نہیں۔ یہ عمل جاری رہتا ہوگا، جب تک کہ پچھلے برابر نود کو نکالا جائے (یہ لازمی طور پر ایک عنصر نود ہونا چاہئے)۔ اس طرح، تمام براوزر میں نتائج درست ہو جائیں گے。

نکته:برای اطلاعات بیشتری در مورد تفاوت‌های بین مرورگرها، لطفاً به بخش DOM مرورگر در آموزش XML 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;
{}

عیناً کوشاں