خصائص lastChild في XML DOM
التعريف والاستخدام
lastChild
الخصائص تعود بالنقطة الأخيرة للنقطة الفرعية المحددة.
النحو
nodeObject.lastChild
ملاحظة:Firefox و معظم المتصفحات الأخرى تعتبر الفراغ أو الإنتقال إلى السطر كنقطة نصية، بينما لا يفعل ذلك متصفح Internet Explorer. لذلك، في المثال التالي، نستخدم دالة لتحقق من نوع النقطة الأخيرة للنقطة الفرعية.
مكون العنصر nodeType هو 1، لذا إذا لم يكن آخر ابن غير عنصر، سيتم الانتقال إلى العنصر السابق وتحقق ما إذا كان هو عنصر. سيستمر هذا حتى يتم العثور على آخر ابن (يجب أن يكون عنصرًا). بهذا الشكل، تكون النتيجة صحيحة في جميع المتصفحات.
نصيحة:للحصول على معلومات إضافية حول الفروق بين المتصفحات، يرجى زيارة قسم DOM المتصفحات في دروس XML 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>"; {}