2012-08-29 12 views
11

El método .fadeOut() anima la opacidad de los elementos coincidentes. Una vez que la opacidad llega a 0, la propiedad de estilo de visualización se establece en none, por lo que el elemento ya no afecta al diseño de la página y lo mismo ocurre con fadeIn().El método .fadeOut() para usar la propiedad de visibilidad en función de la propiedad de visualización

Mi pregunta es ¿pueden utilizar la propiedad de visibilidad para que el elemento ocupe el espacio en el diseño de la página y no sea solo visible?

Respuesta

28

Use jQuery's fadeTo() y luego haga que una devolución de llamada establezca la visibilidad. Ejemplo:

$('selector').fadeTo(500, 0, function(){ 
    $('selector').css("visibility", "hidden"); 
}); // duration, opacity, callback 

http://jsfiddle.net/7HjB6/

+0

que no causará la visibilidad del elemento oculto y aún se puede hacer clic en el elemento :( – Champ

+0

Solo agregue una devolución de llamada que agrega la propiedad al fundido completo. Respuesta actualizada – Duopixel

+0

esto es lo que estoy haciendo con fadeOut() Ver http: // jsfiddle .net/gajjuthechamp/BTGeR/1/pero necesito una solución mejor – Champ

6

Sólo sobrescribir la propiedad en la llamada de vuelta

$('Element').on("click", function() { 
    $(this).fadeOut(500, function() { 
     $(this).css({"display": "block","visibility": "hidden"}); // <-- Style Overwrite 
    }); 
})​ 
+0

Ya he hecho esto gracias a la sección de comentarios de agrado. pero si lo intenta y como es nuevo en SO, obtiene +1 :) – Champ

3

animado con la opacidad CSS parece conseguir un efecto similar.

$('#element').animate({opacity: 0}, 1000); 

Ejecutar la misma con la opacidad: 1 a desaparecer de nuevo en

Credit..

+1

Esta solución es simple y elegante para ciertos casos de uso, pero debe mencionarse que un elemento con opacidad cero aún responde a los eventos (haga clic, presione la tecla , etc.) y participa en el orden de tabulación. La advertencia con esta estrategia es que tiene implicaciones de accesibilidad. Ver: http://stackoverflow.com/questions/272360/does-opacity0-have-excaly-the-same-effect-as-visibilityhidden –

Cuestiones relacionadas