2011-11-15 22 views
5

Ho un div che dissolve In/Out un altro elemento nella pagina al passaggio del mouse (e passa il mouse). Il problema è che non c'è nulla che impedisca all'utente di passare sopra e fuori molto rapidamente e causare l'animazione in coda.Jquery, impedisce le animazioni di accodamento

Ecco il mio codice:

<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; 
} 

Ed ecco un link per jsfidde: http://jsfiddle.net/btEXH/

risposta

5

si desidera utilizzare th e stop e passa true per clearQueue e jumpToEnd.

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

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

+0

E 'possibile fadeIn/partenza da dove l'animazione interrotta piuttosto che saltare alla fine e quindi eseguire l'animazione. - Ha fatto il lavoro altrimenti. Grazie! – Tom

+0

@Tom Dovrebbe essere possibile cambiando il 2 ° parametro su falso. Anche se questo sembra causare problemi di opacità –

+0

Sì, l'ho provato e ho avuto lo stesso problema. In questo caso non dovrebbe causare problemi, ma se l'animazione fosse più lenta potrebbe sembrare un po 'strana. – Tom

Problemi correlati