XML DOM firstChild প্রতিযোগিতা
সংজ্ঞা ও ব্যবহার
firstChild
এটি ডকুমেন্টের প্রথম সাব-নোড নোডটি ফেরত দেয়。
সংজ্ঞা
documentObject.firstChildমন্তব্য:ফাইরফক্স এবং অধিকাংশ অন্যান্য ব্রাউজার শুধুমাত্র ক্রিয়াহীন অথবা নিবন্ধন করে টেক্সট নোড হিসাবে মনে করে, কিন্তু ইন্টারনেট এক্সপ্লোরার না। তাই, নিচের উদাহরণে, আমরা একটি ফাংশন ব্যবহার করে প্রথম সাব-নোডের নোড টাইপ পরীক্ষা করি。
ইলেকট্রনিক নোডের 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_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); 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_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); // শুরুতের ইলেকট্রনিক সন্নিবেশটির শেষতম সন্নিবেশকে পাওয়া var y = get_lastchild(xmlDoc.documentElement); document.getElementById("demo").innerHTML = "Nodename: " + x.nodeName + " (nodetype: " + x.nodeType + ")<br>" + "Nodename: " + y.nodeName + " (nodetype: " + y.nodeType + ")<br>"; }