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:
Esto mostrará u ocultará el menú de busqueda.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); }
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