Foros del Web » Programando para Internet » Javascript »

Novato con Javascript

Estas en el tema de Novato con Javascript en el foro de Javascript en Foros del Web. Ayer comenze un curso de Javascript por internet y hasta ahora me ha ido bien con el primer ejercicio, pero tengo un problema. En una ...
  #1 (permalink)  
Antiguo 21/03/2007, 04:45
 
Fecha de Ingreso: noviembre-2002
Ubicación: Suecia
Mensajes: 253
Antigüedad: 21 años, 5 meses
Puntos: 2
Novato con Javascript

Ayer comenze un curso de Javascript por internet y hasta ahora me ha ido bien con el primer ejercicio, pero tengo un problema. En una parte del ejercicio hay que crear una ventana que muestra la url de un link. Hasta ahora he podido mostrar la ventana con la url pero cuando presiono en "ok" se carga la pagina linkeada. Asi se ve mi codigo

Código HTML:
<script type ="text/javascript">
    function adress(){
	alert("http://www.w3.org");
    }
</script> 

y el link se ve asi:

Código HTML:
<p><a href = "http://www.w3.org/DOM/" onClick="adress()";>W3C DOM</a></p> 
Como logro hacer aparecer la ventana pero que no me redireccione a la W3c pagina???
  #2 (permalink)  
Antiguo 21/03/2007, 04:53
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: Novato con Javascript

Hola Jarkaos

Ponlo así:

Código:
<a href = "http://www.w3.org/DOM/" onclick="adress(); return false";>
Saludos,
  #3 (permalink)  
Antiguo 21/03/2007, 05:51
 
Fecha de Ingreso: marzo-2007
Mensajes: 11
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Novato con Javascript

Si lo que quieres es que el enlace solo te muestre el alert no deberías indicar ninguna url en el href

puedes hacer lo siguiente:
<a href="javascript:adress()" >...</a>
con lo que se indica que el enlace al que se accede al pinchar en el link es un comando javascript.

O también puedes hacer esto:
<a href="#" onclick="adress()" >...</a>
La almoadilla es para usar enlaces dentro de la misma página, y como no le indicas a donde, pues no va a ninguna parte, por lo que solo ejecuta el onclick.

Saludos
  #4 (permalink)  
Antiguo 21/03/2007, 07:03
 
Fecha de Ingreso: noviembre-2002
Ubicación: Suecia
Mensajes: 253
Antigüedad: 21 años, 5 meses
Puntos: 2
Re: Novato con Javascript

Gracias. Con return false me funciono. Lo que no entiendo es por que si lo coloco aca:
Código HTML:
function adress(){
   alert("http://www.w3.org");
   return false;			
}
no funciona?
  #5 (permalink)  
Antiguo 21/03/2007, 07:15
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: Novato con Javascript

Hola de nuevo.

Eso es porque estás devolviendo false, pero el evento onclick no lo recoge. Pruébalo así:
Código:
<script type="text/javascript">
function adress(){
   alert("http://www.w3.org");
   return false;			
}
</script>
</head>
<body>
<a href = "http://www.w3.org/DOM/" onclick="return adress()";>Enlace</a>
Saludos,
  #6 (permalink)  
Antiguo 21/03/2007, 09:08
 
Fecha de Ingreso: noviembre-2002
Ubicación: Suecia
Mensajes: 253
Antigüedad: 21 años, 5 meses
Puntos: 2
Re: Novato con Javascript

Gracias por la ayuda.
Me parece que este curso no me sera tan facil asi que me veran seguido por aqui haciendo preguntas de nivel basico supongo para ustedes que tienen mas experiencia con JS.

Por ejemplo aui tengo otra: en un ejercicio tengo contar las cantidades de a tags que contiene un archivo xhtml, pero no podemos hacer ningun cambio en el codigo xhtml. El problema es que la llamada al .js se realiza entra los tags head por lo que el javascript se lanza tan pronto la pagina es llamada. Utilizando esto:

alert(document.getElementsByTagName("a").length);

en el archivo .js el resultado es 0 (cuando deberia ser 5). Pero si muevo el tag script al final del xhtml (cosa que nos prohibieron) funciona bien.

Funciona:
Código HTML:
....</div>
   <script type = "text/javascript" src = "uppgift2.js"></script>
</body>
</html> 
no funciona:
Código HTML:
<head>
   <title>Institutionen för informatik</title>
   <link href = "uppgift2.css" rel = "stylesheet" type="text/css"/>
   <script type = "text/javascript" src = "uppgift2.js"></script>
</head> 
javascript:

Código HTML:
alert(document.getElementsByTagName("a").length);
  #7 (permalink)  
Antiguo 21/03/2007, 09:35
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: Novato con Javascript

Rehola.

Prueba poniendo así el código JavaScript:

Código:
function ini() {
  alert(document.getElementsByTagName("a").length);
}
window.onload=ini;
Saludos,
  #8 (permalink)  
Antiguo 21/03/2007, 17:41
 
Fecha de Ingreso: noviembre-2002
Ubicación: Suecia
Mensajes: 253
Antigüedad: 21 años, 5 meses
Puntos: 2
Re: Novato con Javascript

Gracias a todos. me funciono con el ultimo tip.

Ahora, bueno mañana comenzare con otro trabajo de javascript que tiene que ver con links. Si no encuentro la solucion por las mias seria mucho problema plantear las preguntas aqui? quiero decir colocar el o los codigos que haya escrito y que ustedes me lo revisen y me digan que esta fallando?

Por lo demas, estoy muy agradecido por vuestra ayuda. Me he entretenido bastante tambien leyendo las FAQ´s y para no ser menos aqui coloco unos links, que quizas ya conozcan:

http://javascript.internet.com/
http://www.javascript.com/
http://javascript.programmershelp.co.uk/books.php

Gracias!!
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 01:42.