Buenas,
tengo una barra de busqueda en la página que estoy haciendo. Ésta aparece y se oculta segun pulso un botón.
El botón tiene onclick="verOcultarMenuBusqueda();"
que ejecuta lo siguiente:
Código:
var movb;
var ypos=85;
function VerOcultarMenuBusqueda()
{
if (movb==2) movb=-2; // cuando se vuelve a ejecutar VerOcultaMenu, mov=2 (ya se mostró) y ahora será negativo para ir restando
else movb=2; // al principio esta oculto -> mov=2, se va aumentando xpos
MoverMenuBusqueda();
}
function MoverMenuBusqueda()
{
ypos=ypos+(4*movb);
if(ypos < 85) ypos=85;
if(ypos > 115) ypos=115;
document.getElementById("contenedor_perfil_barra").style.top=ypos+"px";
if (ypos <= 85 || ypos >=115) window.clearTimeout();
else window.setTimeout(MoverMenuBusqueda,14);
}
Esto mostrará u ocultará el menú de busqueda.
El problema es que en firefox puedo hacer clicks rápidamente, y aunque haya mostrado/ocultado la mitad, comienza a hacer lo contrario, pero en IE, si hago un click y vuelvo a hacerlo rápidamente no funciona, hay que esperar unas decimas de segundo para que vuelva a ejecutar el VerOcultarMenu haciendo click (ignora los clicks rápidos después del primero).
Alguien sabe porque ocurre esto con IE y alguna posible solución?
gracias y saludoos