ParentNode.lastElementChild

Esta traducción está incompleta. Por favor, ayuda a traducir este artículo del inglés.

La propiedad de sólo lectura ParentNode.lastElementChild retorna el último hijo del objeto Element o bien null si no hay elementos hijos.

Esta propiedad fue inicialmente definida en el interfaz puro ElementTraversal. Dado que este interfaz contenía dos juegos distintos de propiedades, uno dirigido al nodo Node que tiene hijos, y otro a aquellos que son hijos, se han trasladado a dos interfaces puros separados, ParentNode y ChildNode. En este caso, lastElementChild fue movido a ParentNode. Este es un cambio de carácter técnico que no debería afectar a la compatibilidad.

Sintaxis

var childNode = elementNodeReference.lastElementChild; 

Ejemplo

<p id="para-01">
  <span>First span</span>
  <b>bold</b>
</p>

<script type="text/javascript">
  var p01 = document.getElementById('para-01');
  alert(p01.lastElementChild.nodeName)
</script>

En este ejemplo, la alerta muestra "B", que es el nombre de etiqueta del último nodo hijo del elemento párrafo ("P").

Polyfill para Internet Explorer 8

Esta propiedad no está soportada con anterioridad a IE9, así que el siguiente códigopuede ser usado para añadir el soporte a IE8:

// Source: https://github.com/Alhadis/Snippets/blob/master/js/polyfills/IE8-child-elements.js
if(!("lastElementChild" in document.documentElement)){
    Object.defineProperty(Element.prototype, "lastElementChild", {
        get: function(){
            for(var nodes = this.children, n, i = nodes.length - 1; i >= 0; --i)
                if(n = nodes[i], 1 === n.nodeType) return n;
            return null;
        }
    });
}

Especificación

Especificación Estado Observaciones
DOM
The definition of 'ParentNode.lastElementChild' in that specification.
Living Standard Dividido el interfaz ElementTraversal en ChildNode y ParentNode. Este método queda ahora definido en el segundo.
Document y DocumentFragment implementaron los nuevos interfaces.
Element Traversal Specification
The definition of 'ElementTraversal.lastElementChild' in that specification.
Recommendation Añadida su definición inicial al interfaz puro ElementTraversal  y lo usa en Element.

Compatibilidad con navegadores

Prestación Chrome Firefox (Gecko) Internet Explorer Opera Safari
Soporte básico (en Element) 1.0 3.5 (1.9.1) 9.0 10.0 4.0
Soporte en Document y DocumentFragment 29.0 25.0 (25.0) No support 16.0 No support
Prestación Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Soporte básico (en Element) (Yes) 1.0 (1.9.1) (Yes) (Yes) (Yes)
Soporte en Document y DocumentFragment (Yes) 25.0 (25.0) No support 16.0 No support

 

Ver también

Etiquetas y colaboradores del documento

 Colaboradores en esta página: Grijander81
 Última actualización por: Grijander81,