XML DOM lastChild প্রতিযোগিতা

সংজ্ঞা ও ব্যবহার

lastChild এটি নির্দিষ্ট নোডের শেষ সাব-নোড নোডকে ফিরিয়ে দেয়।

সিন্তাক্স

nodeObject.lastChild
টিপস এবং নোটস

মন্তব্য:ফাইরফক্স এবং অধিকাংশ অন্যান্য ব্রাউজার খালি স্পেস বা নিউলাইনকে টেক্সট নোড হিসাবে দেখে, কিন্তু ইন্টারনেট এক্সপ্লোরার না। তাই, নিচের উদাহরণে, আমরা একটি ফাংশন ব্যবহার করি যাতে শেষ সাব-নোডের নোড টাইপ পরীক্ষা করা যায়。

এলিমেন্ট নোডের nodeType হল 1, তাই সর্বশেষ সাব-নোডকে এলিমেন্ট নোড না হলে, পূর্ববর্তী নোডে চলে যাওয়া হবে এবং সেই নোডকে এলিমেন্ট নোড কি হয় না তা পরীক্ষা করা হবে। এইভাবে, এই প্রক্রিয়া চলবে পর্যন্ত যখন সর্বশেষ সাব-নোড (যা এলিমেন্ট নোড হতে হবে) পাওয়া যাবে। এইভাবে, সব ব্রাউজারে ফলাফল সঠিক হবে।

সুঝাওয়া:ব্রাউজারের মধ্যে পার্থক্য সম্পর্কে আরও বেশি তথ্য জানতে XML DOM টিউটোরিয়ালের DOM ব্রাউজার চ্যাপটে দেখুন。

ইনস্ট্রাকশন

উদাহরণ 1

নিচের কোড "books.xml"-কে xmlDoc-তে লোড করে ডকুমেন্টের সর্বশেষ সাব-নোডের নোড নাম দেখাবে:

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_lastchild(n) {
    var x = n.lastChild;
    while (x.nodeType != 1) {
        x = x.previousSibling;
    }
    return x;
}
function myFunction(xml) {
    var xmlDoc = xml.responseXML;
    var x = get_lastchild(xmlDoc);
    document.getElementById("demo").innerHTML =
    "Nodename: " + x.nodeName +"
    " (nodetype: " + x.nodeType + ")<br>";
}

亲自试一试

উদাহরণ 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_firstchild(n) {
    var x = n.firstChild;
    while (x.nodeType != 1) {
        x = x.nextSibling;
    }
    return x;
}
function myFunction(xml) {
    var xmlDoc = xml.responseXML;
    // ডকুমেন্টের প্রথম সাব-নোডের পাওয়া হয়
    var x = get_firstchild(xmlDoc);
    // প্রথম সাব-নোডের পাওয়া হয়
    var y = get_firstchild(xmlDoc.documentElement);
    document.getElementById("demo").innerHTML =
    "Nodename: " + x.nodeName +" 
    " (nodetype: " + x.nodeType + ")<br>" +
    "Nodename: " + y.nodeName + 
    " (nodetype: " + y.nodeType + ")<br>";
}

亲自试一试