Pregunta

He creado una secuencia de comandos JQuery simple con efecto flotante en algunos enlaces. El script funciona bien como puede ver aquí: Muestra de prueba ... (Por favor, pruébelo cualquier navegador que no sea IE)

Pero si muevo rápido en los enlaces, observará que los iconos de imagen no desaparecen según sea necesario. He intentado todo para solucionar este problema, pero no puedo encontrar una solución adecuada.

La pregunta ahora: ¿Cómo puedo estar seguro de que el efecto de desplazamiento del mouseOut se aplica después de que el efecto del desplazamiento del mouseover se haya completado por completo?

¿Fue útil?

Solución

Debe aplicar stop () a los elementos que se han animado. Prueba esto:

function hide_frame() {
   var hoveredLang = $(this).parent();              
   hoveredLang
      .find('.language-name').stop(true, true)
      .find('.download-img').stop(true, true)
      .find('.info-img').stop(true, true);
   //eccetera...

Otros consejos

Debido a que su efecto de animación tiene una duración hasta su finalización, debe manejar los casos en los que se produzca la activación / desactivación durante la animación.

Uso la función stop de JQuery ( http: //docs.jquery. com / Effects / stop )

Por ejemplo.

$ (" selector "). stop (true, true) .youreffect (.....);

Inténtalo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top