Autor Tema: JavaScript childNodes no funciona CU01126E Ejercicio nodos del DOM  (Leído 3133 veces)

jbodenser

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 28
    • Ver Perfil
Buenas tardes,

Estaba tratando de descubrir por qué uno de los codigos no se ejecuta.

Y me he encontrado con que al poner este código, JS deja de funcionar.

Código: [Seleccionar]
msg = msg + 'Nodo hijo de etiqueta body es texto <<Texto en body>> con nodeName: ' + document.childNodes[1].childNodes[2].childNodes[0].nodeName +'\n\n';
Según parece con (document.childNodes[1]) llegamos a la etiqueta HTML, luego le sigue (.childNodes[2])...
en el índice 0 estaría HEAD, en el 1, BODY y en el 2?? eso existe o es un código erróneo?

Sé que no vamos a acceder a los nodos de este modo pero no esta mal saberlo no? es que también soy muy curioso.

Gracias por la paciencia.

Saludos
« Última modificación: 27 de Noviembre 2015, 08:11 por Ogramar »

Ogramar

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2660
    • Ver Perfil
Re:JavaScript childNodes no funciona CU01126E Ejercicio nodos del DOM
« Respuesta #1 en: 27 de Noviembre 2015, 08:11 »
Buenas, en el propio texto del curso tienes la respuesta:

Citar
¿Por qué usamos distinto código para distintos navegadores si estamos trabajando con un mismo código HTML?

El motivo es que cada navegador trabaja, de forma interna, de distinta manera. En este caso, al navegador 2 usar distinto número de nodos que el navegador 1, los índices de acceso a nodos no son los mismos para distintos navegadores. En consecuencia, si tratamos de ejecutar el código para el navegador 2 en el navegador 1 posiblemente lo que ocurra es que “no se muestra nada”, debido a que al haber errores en los índices de acceso JavaScript detecta el error y simplemente no se ejecuta (sin mostrar ningún aviso).

¿Significa esto que tendremos que crear distinto código JavaScript para los distintos navegadores?

No, existen métodos más estándares y sencillos para acceder a nodos que veremos más adelante

Salu2

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".