var html = "<div id='blah'>Hello stuff here</div>"
$("#mycontent").append(html).fadeIn(999);
This doesn't seem to work.
I just want a cool effect when the content gets appended.
Note: I want just the new "blah" div to fade in, not the entire "mycontent".
$(html).hide().appendTo("#mycontent").fadeIn(1000);
Adding a little more info:
jQuery implements "method chaining", which means you can chain method calls on the same element. In the first case:
$("#mycontent").append(html).fadeIn(999);
you would be applying the fadeIn
call to the object which is target of the method chain, in this case #mycontent
. Not what you want.
In @icktoofay's (great) answer you have:
$(html).hide().appendTo("#mycontent").fadeIn(1000);
This basically means, create the html
, set it as hidden by default, append it to #mycontent
and then fade it in. The target of the method chain now is hmtl
instead of #mycontent
.
This also works
$(Your_html).appendTo(".target").hide().fadeIn(300);
Regards
since the fadeIn is a transition from hide to show, you'll have to hide the "html" element when you append it and then to show it.
var html = "<div id='blah'>Hello stuff here</div>" $("#mycontent").append(function(){ return html.hide(); }); $('#blah').fadeIn(999);
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.