Llevo ya 6 horas dándole vueltas y no hay forma de saber que es lo que estoy haciendo mal.
He hecho un script que lo que quiero que haga es mover una capa hacia abajo hasta un límite,cuando el ratón se ponga encima del botón correspondiente.
Y cuando se ponga encima del otro botón se recoja hacia arriba.
Lo que me ocurre es que el movimiento solo lo hace una vez y se sale del bucle.
El código es el siguiente:
Código:
¿Alguien sabe dónde está el error y por qué no baja la capa hasta el límite de 145 px y tampoco sube hasta el límite de 10 px?<HTML> <HEAD> <TITLE>Página con Fomulario </TITLE> </HEAD> <BODY> <Script language="JavaScript"> <!-- function MueveCapa(capa){ var anty, limite=145; anty= parseInt(capa.style.top); if (anty>limite){ return true; } else{ capa.style.top= anty + 10; setTimeout("MueveCapa(capa)",5); } return true; } function DevuelveCapa(capa){ var anty1, limite=12; anty1= parseInt(capa.style.top); if (anty1<limite){ return true; } else{ capa.style.top= anty1 - 10; setTimeout("DevuelveCapa(capa)",5); } return true; } //--> </Script> <CENTER> <H3> Pantalla de Movimiento </H3> </CENTER> <div id="capa1" Style="position:absolute; left:500px; top:0px; visibility:visible;z-index:1;"> Esto es una prueba </div> <div id="capa2" Style="position:absolute; left:20px; top:100px; visibility:visible;z-index:2;"> <Form name="miform"> <Input Type="button" Value="Mover Imagen" onmouseover="MueveCapa(capa1);"> <Input Type="button" Value="Situar Imagen" onmouseover="DevuelveCapa(capa1);"> </Form> </div> </BODY> </HTML>
Muchas gracias a todos.