2011-11-15 11 views
5

Tengo un div que se desvanece dentro/fuera de otro elemento en la página al pasar el mouse (y desplazarse hacia afuera). El problema es que no hay nada que impida que el usuario pase y salga muy rápido y haciendo que la animación haga cola.Jquery, evitar las animaciones de cola

Aquí está mi código:

<div class="hovertest">test</div> 

<div class="test">test2</div> 

Jquery:

$("div.hovertest").hover(
     function() { 
     $(".test").fadeOut(); 
     }, 
     function() { 
     $(".test").fadeIn(); 
}); 

CSS:

div { 
    width:200px; 
    height:100px; 
    background-color:#B22; 
} 

Y aquí hay un enlace a jsfidde: http://jsfiddle.net/btEXH/

Respuesta

5

que desea utilizar º e stop función y pasa true para clearQueue y jumpToEnd.

$("div.hovertest").hover(
    function() { 
    $(".test").stop(true, true).fadeOut(); 
    }, 
    function() { 
    $(".test").stop(true, true).fadeIn(); 
}); 

http://jsfiddle.net/infernalbadger/btEXH/1/

+0

¿Es posible fadeIn/salida desde donde se detuvo la animación en lugar de saltar hasta el final y luego ejecutar la animación. - eso ha hecho el trabajo de otra manera. ¡Gracias! – Tom

+0

@Tom Debería ser posible cambiando el 2do parámetro a falso. Aunque eso parece causar problemas de opacidad –

+0

Sí, lo intenté y tuve el mismo problema. En este caso, no debería causar un problema, pero si la animación fue más lenta, podría parecer un poco extraño. – Tom

Cuestiones relacionadas