Foros del Web » Programando para Internet » Javascript »

Javascript con event/function

Estas en el tema de Javascript con event/function en el foro de Javascript en Foros del Web. Hola a todos, estoy empezando a utilizar javascript y necesitaría ayuda para desarrollar una simple function. Me explico quería aplicar a un <a> una function ...
  #1 (permalink)  
Antiguo 21/03/2011, 09:46
 
Fecha de Ingreso: mayo-2010
Mensajes: 24
Antigüedad: 14 años, 6 meses
Puntos: 0
Pregunta Javascript con event/function

Hola a todos,

estoy empezando a utilizar javascript y necesitaría ayuda para desarrollar una simple function.

Me explico quería aplicar a un <a> una function que al event "onMouseOut" quite poco a poco el color de a:hover que le había dado con otra function....de manera que se vea la barrita de color que va decreciendo hasta volver al color de <a> antes de haber pasado el ratón encima.

Pido perdona pero me resulta dificil hasta explicaros el problema.

Os dejo aquí el código que he ententado escribir y que no funciona!

Gracias de antemano a quien sabrá ayudarme!

<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Prova-portfolio
</title>
<style type="text/css">

#menu {
position:absolute;
left:300px;
top:300px;
width:100px;
height:50px;
z-index:1;
background-color:#fff;
display:block;
}

#menu2 {
position:absolute;
left:300px;
top:300px;
width:1px;
height:50px;
z-index:2;
background-color:#000;
display:block;
}

</style>

<script type="text/javascript">
<!--
function open() {
document.getElementById("menu2").style.width = "100px";
}

var p = 100;
function close() {
if (p > 0) {
p-=5;
document.getElementById("menu2").style.width = p + "px";
setTimeout("close()", 30);
}
}
-->
</script>
</head>

<body>
<div id="menu" onMouseOver="function open();" onMouseOut="function close();">
<a href="javascript:;" onMouseOver="function open();" onMouseOut="function close();">Hola</a>
</div>
<div id="menu2"></div>

</body>
</html>
  #2 (permalink)  
Antiguo 21/03/2011, 10:41
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 7 meses
Puntos: 1485
Respuesta: Javascript con event/function

buenas...

te dare unas pistas para que puedas seguir adelante por ti misma. la primera y la que casi siempre te sacara de muchos problemas, siempre revisa la consola de error del navegador. este te notificara sobre errores que puede tener el codigo. lo proximo es que estas invocando las funciones de forma incorrecta. la sentencia funcion se utiliza solo para definir una funcion, para invocarla solo debes indicar el nombre seguido de los parentensis. por otro lado, debes evitar utilizar nombres que el propio lenguaje utiliza para las funciones/propiedades built-in. por ejemplo, open y close son dos funciones de javascript.

__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 21/03/2011, 13:13
 
Fecha de Ingreso: mayo-2010
Mensajes: 24
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Javascript con event/function

Muchas gracias,

seguiré adelante y te comentaré algo!
  #4 (permalink)  
Antiguo 21/03/2011, 13:47
 
Fecha de Ingreso: mayo-2010
Mensajes: 24
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Javascript con event/function

Hola,

con los consejos que me habeis dado la cosa ya ha adlantado.

El problema es que ahora al poner el ratón encima, llama antes la primera function, luego la segunda y de nuevo la primera.
Digamos que pone el color en a:hover, luego se ve la barrita que va decreciendo hasta que de nuevo aplica el a:hover.

Mientras que al salir no llama ninguna function!
Alguien sabe porqué?

Gracias de nuevo.

Etiquetas: event, function
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 02:34.