2010-04-26 17 views
22

Tengo el siguiente código:JQuery: ¿Cómo determinar si el evento Slide está activo o inactivo?

$('a.btn-slide').toggle(function() { 
    $("#DivToSlide").slideUp("fast"); 
    // ... 
}, function() { 
    $("#DivToSlide").slideDown("fast"); 
    // ... 
}); 

Más adelante en mi código, quiero saber si es #DivToSlide ya sea en el hasta o abajo posición.

¿Cómo puedo hacer eso?

+2

¿Qué pasa si está en medio de la animación? – SLaks

Respuesta

47

Dado que la función slideDown esconde el elemento después de que termine, sólo tiene que comprobar si el elemento es visible:

if ($('#DivToSlide').is(':visible')) 

También puede comprobar si $('#DivToSlide').height() es más que algún umbral.

+0

¿Por qué debería * "verificar si $ ('# DivToSlide'). Height() es más que algún umbral." *? – JGreig

+1

Solo haciendo * if ($ ('# DivToSlide'). Is (': visible')) * funciona – JGreig

+0

En caso de que esté en medio de la animación. – SLaks

2
if($(this).next('.nxt_div').height()>1){ } 
Cuestiones relacionadas