Foros del Web » Programando para Internet » Javascript »

Funciones del DOM

Estas en el tema de Funciones del DOM en el foro de Javascript en Foros del Web. Hola a todos. Estoy empezando con la programación en JavaScript y para ello sigo un libro de la página librosweb. Estoy totalmente encallado en el ...
  #1 (permalink)  
Antiguo 16/10/2007, 16:17
 
Fecha de Ingreso: septiembre-2007
Mensajes: 9
Antigüedad: 16 años, 7 meses
Puntos: 0
Funciones del DOM

Hola a todos.

Estoy empezando con la programación en JavaScript y para ello sigo un libro de la página librosweb.

Estoy totalmente encallado en el tema de los nodos DOM. Hay un ejercicio que pide sacar el número de enlaces que hay en una página, pues bien, no hay manera de que me salga la cantidad; al final he copiado directamente la solución en la página pero ¡NO FUNCIONA!.

Mi pregunta es: ¿hay que instalar "algo" para que funcionen las funciones DOM?.

El código que pongo es el siguiente: (no me parece que tenga ninguna complicación)

Código PHP:

<script language="javascript" type="text/javascript">

var 
enlaces document.getElementsByTagName("a");
var 
numenlaces enlaces.length;
alert (numenlaces);


</script> 
La página tiene tres párrafos y dentro de ellos varios enlaces, pero al parecer no me funcionan las funciones del DOM.

Lo mismo hay algún error de novato, pero he probado de un montón de maneras y el resultado que me da es cero siempre, pero copiando la solución es que no me da ni un resultado, JAJAJAJA.

Gracias y saludos.
  #2 (permalink)  
Antiguo 16/10/2007, 16:26
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: Funciones del DOM

Hola:

El código parece bien (yo quitaría el atributo language)... si usas un navegador raro, o javascript desactivado podría comprenderse...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 16/10/2007, 16:28
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Re: Funciones del DOM

Hola German1980:

Al parecer no veo ningún error en el código, pero necesitamos que postees todo el documento para ver cómo están dispuestos los enlaces, y la información HTML. Quizás estés ejecutando el javascript antes de que aparezcan los elementos HTML en la página (es decir, al principio de la página o en el HEAD).

Para DOM no hay que instalar nada. En javascript lo máximo que hay que instalar es un navegador en la máquina que lo ejecuta.

Por cierto, para que te habitues a las buenas maneras: olvida el atributo language

Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
>
<
html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">
<
head>
<
meta http-equiv="Content-type" content="text/html;charset=iso-8859-1" />
<
meta name="Author" content="derkeNuke" />
<
title>Página nueva</title>
<
style type="text/css">

</
style>
</
head>

<
body>

<
p>asdasas dohasd <a href="">hasp</adsajdpjsapd pas dpsadihsadp <a href="">hsapid hashdsaod</a>.</p>

<
p><a href="">pfjdsfojdsà</afjod òd jsa`fjdpo pfo dfjisdfosdf ds.</p>

<p>ds fsdi <a href="">jfpidspifds</a> fsdjpfpds<a href=""> fds fsd   </a>p fsdjp fjsdpj.</p>

<script type="text/javascript">
<!--

var enlaces = document.getElementsByTagName("a");
var numenlaces = enlaces.length;
alert (numenlaces);

// -->
</script> 

</body>
</html> 

Bueno, espero que lo veas.


Un saludo

PD: No, no me ha entrado la dislexia con el texto del ejemplo
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #4 (permalink)  
Antiguo 17/10/2007, 05:46
 
Fecha de Ingreso: septiembre-2007
Mensajes: 9
Antigüedad: 16 años, 7 meses
Puntos: 0
Re: Funciones del DOM

Hola de nuevo.

Muchas gracias a los dos por responder y tomo buena nota de los consejos!!!.

Tienes razón derkenuke ya me funciona el script, lo tenía puesto entre las etiquetas <head> porque según el libro habia que ponerlo ahí. Ahora lo he colocado, como bien indicabas en tu script, al final de la página y funciona perfectamente.

Saludos German1980
  #5 (permalink)  
Antiguo 17/10/2007, 10:08
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Re: Funciones del DOM

Hola de nuevo German1980:

Es raro que el libro te diga que debas colocarlo ahí: Tal vez el ejemplo trabaje con una función para agrupar las tres sentencias y ejecutarlas en el momento de carga de la página (evento window.onload):

Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
>
<
html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">
<
head>
<
meta http-equiv="Content-type" content="text/html;charset=iso-8859-1" />
<
meta name="Author" content="derkeNuke" />
<
title>P&#225;gina nueva</title>
<script type="text/javascript">
<!--

function 
cuantosEnlaces() {
    var 
enlaces document.getElementsByTagName("a");
    var 
numenlaces enlaces.length;
    
alert (numenlaces);
}

window.onload cuantosEnlaces;

// -->
</script> 
</head>

<body>

<p>asdasas dohasd <a href="">hasp</a> dsajdpjsapd pas dpsadihsadp <a href="">hsapid hashdsaod</a>.</p>

<p>d <a href="">pfjdsfojdsà</a> fjod òd jsa`fjdpo pfo dfjisdfosdf ds.</p>

<p>ds fsdi <a href="">jfpidspifds</a> fsdjpfpds<a href=""> fds fsd   </a>p fsdjp fjsdpj.</p>


</body>
</html> 

Un saludo.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
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 00:53.