2011-01-14 24 views
100
var html = "<div id='blah'>Hello stuff here</div>" 

$("#mycontent").append(html).fadeIn(999); 

Esto no parece funcionar.Añadir un elemento con efecto de fundido [jQuery]

Solo quiero un efecto genial cuando el contenido se anexa.

Nota: Quiero que el nuevo div "blah" se desvanezca, no el "contenido completo" completo.

+0

posible duplicado de [Utilización FadeIn y anexar] (http://stackoverflow.com/questions/327682/using-fadein-and-append) – Medorator

Respuesta

228
$(html).hide().appendTo("#mycontent").fadeIn(1000); 
+1

I solo quiere que el nuevo div "bla" se desvanezca. – TIMEX

+0

@TIMEX: Eso es lo que debería hacer. – icktoofay

+0

¡Genial! Gracias.! – TIMEX

44

La adición de un poco más de información:

jQuery implementos "método de encadenamiento", que significa que puede método de la cadena de llamadas en el mismo elemento. En el primer caso:

$("#mycontent").append(html).fadeIn(999); 

que estaría aplicando la llamada fadeIn al objeto que es el objetivo de la cadena método, en este caso #mycontent. No es lo que quieres

En @ de icktoofay (gran) responder tiene:.

$(html).hide().appendTo("#mycontent").fadeIn(1000); 

Esto significa, básicamente, crear el html, configurarlo como oculto por defecto, lo dejará #mycontent y continuación se desvanecen en el objetivo de la cadena de métodos ahora es hmtl en lugar de #mycontent.

14

Esto también funciona

$(Your_html).appendTo(".target").hide().fadeIn(300); 

Saludos

Cuestiones relacionadas