Foros del Web » Programando para Internet » Javascript »

Recorriendo el DOM

Estas en el tema de Recorriendo el DOM en el foro de Javascript en Foros del Web. Hola de nuevo... Estaba con un exercicio sencillo con chilNodes este... (http://dev.opera.com/articles/view/traversing-the-dom-es/) Y por alguna razón no logro dar con el error. No salta la ...
  #1 (permalink)  
Antiguo 20/05/2013, 11:31
 
Fecha de Ingreso: abril-2013
Ubicación: Madrid
Mensajes: 8
Antigüedad: 11 años
Puntos: 0
Recorriendo el DOM

Hola de nuevo...

Estaba con un exercicio sencillo con chilNodes este... (http://dev.opera.com/articles/view/traversing-the-dom-es/)

Y por alguna razón no logro dar con el error. No salta la ventana de alerta. Perdonad mi ignorancia, gracias por vuestra ayuda.

Mi HTML es este:
Código:
<html>
  <head>
    <title>Ejercicio</title>
<script type="text/javascript">
var nodoParrafo = document.childNodes[0].childNodes[1].childNodes[1];
alert( "nodoParrafo es el nodo " + nodoParrafo.nodeName + " !" );
  </head>
  <body>
    <h1>Esto es una cabecera</h1>
    <p>
      Esto es un párrafo!
    </p>
    <p>
      Mi parrafo 2
    </p>
  </body>
</html>
Sin embargo con este otro JS si va:
Código:
var nodoHtml = document.childNodes[0];
alert( "nodoHtml es un nodo " + nodoHtml.nodeName + " !" );
  #2 (permalink)  
Antiguo 20/05/2013, 11:50
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Recorriendo el DOM

Hola:

Deberías empezar por el objeto document.documentElement que se corresponde con el tag html de la página... busca en google por destripador caricatos y seguro que encontrarás mi página donde se explica como recorrer el DOM.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 20/05/2013, 12:47
 
Fecha de Ingreso: abril-2013
Ubicación: Madrid
Mensajes: 8
Antigüedad: 11 años
Puntos: 0
Respuesta: Recorriendo el DOM

Hola de nuevo Caricatos, gracias pro estar siempre ahí ;)

He accedido a la web que me recomendabas... pero soy muy torpe.

Te refieres a que lo modifique de esta manera: (Es que me sigue sin ir)

var nodoParrafo = document.documentElement.childNodes[0].childNodes[1].childNodes[1];
alert( "nodoParrafo es el nodo " + nodoParrafo.nodeName + " !" );

Siento ser ignorante. Un abrazo. ;)
  #4 (permalink)  
Antiguo 20/05/2013, 16:04
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Recorriendo el DOM

Hola:

No siempre se corresponden los nodos con lo que piensas... por ejemplo sabiendo que document.documentElement es el tag html, el primero de los nodos hijos (childNodes[0]) puede que sea un retorno de carro... o sea un nodo de texto y no la etiqueta head (supongo que estará definida)... y normalmente entre el head y el body metemos otro salto de línea... así que el head podría ser el 1 y el body el 3

Hay formas de saberlo como el atributo nodeType, o el nodeName... (hay más).

En la página mencionada está también el código que he usado (viejo código)... pero básicamente es con un bucle while... buscar los nodos que son etiquetas (nodeType == 1)

Deberás tomártelo con calma...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 21/05/2013, 09:01
 
Fecha de Ingreso: abril-2013
Ubicación: Madrid
Mensajes: 8
Antigüedad: 11 años
Puntos: 0
Respuesta: Recorriendo el DOM

Gracias, lo del retorno de carro me ha sido de mucha ayuda.
Seguiré probando,
saludos

Etiquetas: dom, html, js
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:50.