Estoy escribiendo una extensión de script de contenido de Chrome y necesito poder dirigirme a un elemento específico que, desafortunadamente, no tiene identificadores únicos, excepto su elemento principal.Obtiene el primer elemento secundario inmediato
Necesito apuntar al primer elemento secundario inmediato de parentElement
. console.log(parentElement)
informa ambos elementos/nodos hijos perfectamente, pero los registros de consola posteriores (los que se dirigen a los niñodos) siempre devuelven un valor undefined
sin importar lo que haga.
Este es mi código hasta ahora
(I han excluido los nombres reales para evitar confusiones y, explicación adicional innecesaria)
function injectCode() {
var parentElement = document.getElementsByClassName("uniqueClassName");
if (parentElement && parentElement.innerHTML != "") {
console.log(parentElement);
console.log(parentElement.firstElementChild);
console.log(parentElement.firstChild);
console.log(parentElement.childNodes);
console.log(parentElement.childNodes[0]);
console.log(parentElement.childNodes[1]);
} else {
setTimeout(injectCode, 250);
}
}
¿Cómo se selecciona el primer elemento hijo/nodo de parentElement
?
Actualización:
parentElement.children[0]
también tiene el mismo error que parentElement.childNodes[0]
.
¿Quieres la primera nodo hijo o el primer hijo ** elemento ** (nodo)? –
no dejes espacios entre parent div y child pero en una línea –
childNodes [0] devuelve 'undefined' ¿verdad? Ver mi respuesta w ejemplo a continuación. –