he tratado de utilizar el método toggleClass a ocultar un elemento en mi sitio (usando la visibilidad: oculto en contraposición a mostrar: ninguno) con una ligera animación, pero por alguna razón la animación no funcionaría (posiblemente debido a una versión anterior de jQuery UI).
La clase se eliminó y se agregó correctamente, pero la duración que agregué no pareció hacer ninguna diferencia: el elemento simplemente se agregó o eliminó sin ningún efecto.
Así que para resolver este utilicé una segunda clase en mi método de palanca y se aplica una transición CSS lugar:
El CSS:
.hidden{
visibility:hidden;
opacity: 0;
-moz-transition: opacity 1s, visibility 1.3s;
-webkit-transition: opacity 1s, visibility 1.3s;
-o-transition: opacity 1s, visibility 1.3s;
transition: opacity 1s, visibility 1.3s;
}
.shown{
visibility:visible;
opacity: 1;
-moz-transition: opacity 1s, visibility 1.3s;
-webkit-transition: opacity 1s, visibility 1.3s;
-o-transition: opacity 1s, visibility 1.3s;
transition: opacity 1s, visibility 1.3s;
}
El JS:
function showOrHide() {
$('#element').toggleClass("hidden shown");
}
Gracias @ tomas.satinsky para la increíble (y súper simple) respuesta en this post.
Comprueba jQuery UI. – gdoron
@gdoron hi, nice ... – thecodeparadox