2011-06-22 20 views
10

tengo un div donde hice un $('#div').css('display', 'none');jQuery fadeIn() en la pantalla ninguno

Ahora, para llevar este artículo de nuevo, quiero desaparecer en. Sin embargo, parece que $('#div').fadeIn() no lo está haciendo, pero No quiero volver a mostrar la pantalla para bloquear, como si lo hiciera simplemente vuelve a aparecer al instante en lugar de desvanecerse ... ¿Alguna idea?

+1

¿Podemos ver el marcado y el código que está utilizando? – kinakuta

+0

pelase nos da un fragmento de su código – genesis

+0

¿'.hide()' realmente lo hizo funcionar? –

Respuesta

21

Trate

$('#div').hide(); 

para ocultar el elemento.

Actualización: me sugirió esto porque me encontré un problema con la configuración .css('display', 'none') en el body en Firefox. Pero debería funcionar para otros elementos.

Pero si no funciona con hide() entonces definitivamente tiene otro problema y tiene que publicar más código o proporcionar una demostración.

¿En qué navegador falla? ¿Estás seguro de que se ejecuta $('#div').fadeIn()?

+1

Esta no es la respuesta correcta y aquí está el motivo: no puede iniciar el objeto oculto, excepto al ocultarlo primero con hide(). Creo que esto es un error real para las personas que necesitan comenzar un objeto oculto a través de CSS y luego presentarlo al usuario en un momento posterior – somid3

+0

hey .. acaba de encontrar un enlace a esto de [otra pregunta] (http://stackoverflow.com/questions/22978913/jquery-fadein-method-isnt-working) ... y los OP parecen estar de acuerdo con esto como una solución ... ¿tienen más información con respecto a este comportamiento ... al llamar 'hide()' establece 'display' a' none' no es –

3

Trate

$('#div').hide(); 

en lugar de

display:none; 
4

4 años tarde, pero estoy esperando que esto será, al menos, ayudar a alguien.

Primero necesita cambiar la clase de CSS usando jquery a visibility:hidden y luego aplicar la función de fundido en. Puede encadenar estos dentro de la misma función o ejecutarlos por separado. De cualquier manera, debería ver que el elemento simplemente se vuelve a fundir en la existencia como se esperaba.

1

Simplemente agregue la opción de velocidad;

$('#div').fadeIn(1000); 

Se trabaja para mí ...

0

tuve un problema similar causado por CSS establece en el elemento y su estado :hover.

-webkit-transition: all 0.3s linear; 
-moz-transition: all 0.3s ease; 
-ms-transition: all 0.3s ease; 
-o-transition: all 0.3s ease; 
transition: all 0.3s ease; 

I suprimido estas líneas arriba y finalmente jQuery de fadeIn() funcionado sin problemas.

También asegúrese de que usted no utiliza display:none !important;

Y sí, sólo es necesario para establecer CSS display:none; y luego usar fadeIn().