Actualmente tengo el siguiente código configurado para una diapositiva jQuery.¿Cómo elimino esta clase después de que la diapositiva de jquery esté en la posición hacia arriba?
$(document).ready(function() {
$('a#slide-up').click(function() {
$('.slide-container').slideUp();
return false;
});
$('a#slide-toggle').click(function() {
if ($('.slide-container').is(':visible')) {
$('.slide-container').slideUp();
$(this).removeClass('active');
} else {
$('.slide-container').slideDown();
$(this).addClass('active');
}
});
});
Y el html:
<a id="slide-toggle"></a>
<div class="slide-container">
<a id="slide-up"></a>
>>content<<
</div>
Cuando hago clic en # deslizable de palanca, la clase 'activa' se aplica en ella y div.slide-contenedor se desliza hacia abajo revelando el contenido y otro enlace para deslizar el contenedor hacia arriba (es decir, un # deslizante hacia arriba). Cuando hago clic en una # deslizadera hacia arriba, el contenedor se desliza hacia atrás pero una barra deslizadora # permanece "activa" con la clase aplicada.
Lo quiero para que cuando haga clic en un # deslizante, la clase 'activa' se elimine. ¿Cómo puedo hacer esto?
operación -Editar-
$(document).ready(function() {
$('a#slide-up').click(function() {
$('.slide-container').slideUp(function(){
$('#slide-toggle').removeClass('active');
});
return false;
});
$('a#slide-toggle').click(function() {
if ($('.slide-container').is(':visible')) {
$('.slide-container').slideUp(function() {
$(this).removeClass('active');
}
})
else {
$('.slide-container').slideDown();
$(this).addClass('active');
}
});
});
Gracias. ¡El segundo era justo lo que necesitaba! ¿Hay alguna manera de hacer lo mismo (devolución de llamada) con un deslizador # to -gle? En este momento, cuando hago clic en él mientras la diapositiva está baja, elimina la clase de inmediato. Me gustaría esperar hasta que la animación haya terminado. – J82
@John: Claro. Cualquier animación en jQuery puede aceptar una * devolución de llamada *, que es simplemente una función que se llama cuando la animación está completa. Así que haz clic en el código anterior y pasa una función al 'slideUp' o' slideDown', colocando tu código dentro de él. – user113716
Gracias, Patrick. Probé con lo que sugeriste, pero creo que arruiné algo porque no funciona. ¿Puedes echarle un vistazo al código en la publicación editada y decirme dónde me salió mal? – J82