Document.lastElementChild
تُعيد الخاصيّة Document.lastElementChild القابلة للقراءة فقط آخر عنصِرٍ ابن للكائن، أو القيمة null إن لم يكن هناك أي عنصرٍ ابن.
البنية العامة
var element = node.lastElementChild;
مثال
<ul id="foo">
<li>القيمة الأولى</li>
<li>القيمة الثّانية</li>
<li>القيمة الثّالثة</li>
</ul>
<script>
var foo = document.getElementById('foo');
// تُسجّل القيمة الثّالثة
console.log(foo.lastElementChild.textContent);
</script>
إضافة لدعم المتصفحات غير المدعومة
الشيفرة التّالية تكتب فوق الكائن lastElementChild الذي يعد كائنًا من النّوع prototype وتُضيف دعم كلّ من Document وDocumentFragment لمُتصفّحي IE9 وSafari. لكنّها تعيد مصفوفةً عوضًا عن مجموعة من النّوع HTMLCollection.
;(function(constructor) {
if (constructor &&
constructor.prototype &&
constructor.prototype.lastElementChild == null) {
Object.defineProperty(constructor.prototype, 'lastElementChild', {
get: function() {
var node, nodes = this.childNodes, i = nodes.length - 1;
while (node = nodes[i--]) {
if (node.nodeType === 1) {
return node;
}
}
return null;
}
});
}
})(window.Node || window.Element);
دعم المتصفحات
| الميزة | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|---|
| الدعم الأساسي | 1 | ؟ | 3.5 | 9 | 10 | 4 |
الدعم على كلّ من Document وDocumentFragment (ميّزة تجريبيّة)
|
29 | ؟ | 25 | لا | 16 | لا |
انظر أيضًا
- الواجهة
ParentNodeوالواجهةChildNode - أنواع الكائنات التي تُطبّق هذه الواجهة:
DocumentوElementوDocumentFragment
مصادر ومواصفات
- مواصفة DOM. فرّقت هذه المواصفة الواجهة
ElementTraversalإلى كلّ من الواجهةChildNodeوالواجهةParentNode، هذه الخاصيّة معرّفة الآن على الواجهة الأخيرة. تُطبّق كلّ من الواجهةDocumentوالواجهةDocumentFragmentالواجهتين الجديدتين. - مواصفة Element Traversal Specification.