Javascript 使用fadeIn()将html附加到淡入
我无法使附加到Javascript 使用fadeIn()将html附加到淡入,javascript,jquery,Javascript,Jquery,我无法使附加到$('ul#posts')的元素淡入 我试过的东西 在淡入前设置的显示:无。请求后无法查看附加的html。这意味着fadeIn()不起作用 $(墙柱).appendTo('ul#posts').fadeIn(“慢”)似乎也不起作用 代码: var wall_post = '<li> <img src="image/avatar.jpg" class="avatar"><div class="status"><h2><a href
$('ul#posts')
的
元素淡入
我试过的东西
的显示:无。请求后无法查看附加的html。这意味着fadeIn()不起作用
$(墙柱).appendTo('ul#posts').fadeIn(“慢”)代码>似乎也不起作用
var wall_post = '<li> <img src="image/avatar.jpg" class="avatar"><div class="status"><h2><a href="#" target="_blank">disran</a></h2><p class="message">' + textarea_content + '</p> ' + image_html + '<div class="data"><p class="name"><a href="' + siteurl + '" target="_blank">' + sitetitle + '</a></p><p class="caption">' + siteurl + '</p><p class="description">' + sitedesc + '</p></div></div> </div><p class="likes">5 hours ago · 100 Likes </p></li>';
var message_wall = $('#message_wall').attr('value');
$.ajax({
type: "GET",
url: "insert.php",
data: "message_wall=" + wall_post,
success: function () {
//$('ul#posts').append(wall_post).fadeIn('slow');
//$(wall_post).appendTo('ul#posts').fadeIn("slow");
$('ul#posts').append(wall_post).fadeIn('slow');
}
});
var wall\u post=+siteurl+”
+sitedesc+”
5小时前·100次喜欢;
var message_wall=$('#message_wall').attr('value');
$.ajax({
键入:“获取”,
url:“insert.php”,
数据:“message_wall=“+wall_post,
成功:函数(){
//$('ul#posts').append(wall#u post.fadeIn('slow');
//$(wall#u post).appendTo('ul#posts').fadeIn(“slow”);
$('ul#posts').append(wall#u post.fadeIn('slow');
}
});
+image\u html+
wall\u post HTML结构
<li>
<img src="image/avatar.jpg" class="avatar">
<div class="status">
<h2><a href="#" target="_blank">disran</a></h2>
<p class="message">[.. textarea_content ..]</p>
[.. image_html ..]
<div class="data">
<p class="name">
<a href="[.. siteurl ..]" target="_blank">[.. sitetitle ..]</a>
</p>
<p class="caption">[.. siteurl ..]</p>
<p class="description">[.. sitedesc ..]</p>
</div>
</div>
<p class="likes">5 hours ago 100 Likes</p>
</li>
[…站点URL..]
[…sitedesc..]
5小时前100次喜欢
[…图像_html.]
已经可见的元素不会淡入。你得先把它藏起来
wall_post.hide();
$('ul#posts').append(wall_post).fadeIn('slow');
尝试:
在应用fadeIn操作之前,必须先隐藏或显示:无wall_post。使用此操作
$('ul#posts').append(wall_post).hide('fast').fadeIn('slow');
这里是jsfiddle链接
更新:
var wall_post = '<li> <img src="image/avatar.jpg" class="avatar"><div class="status"><h2><a href="#" target="_blank">disran</a></h2><p class="message">' + textarea_content + '</p> ' + image_html + '<div class="data"><p class="name"><a href="' + siteurl + '" target="_blank">' + sitetitle + '</a></p><p class="caption">' + siteurl + '</p><p class="description">' + sitedesc + '</p></div></div> </div><p class="likes">5 hours ago · 100 Likes </p></li>';
var message_wall = $('#message_wall').attr('value');
$.ajax({
type: "GET",
url: "insert.php",
data: "message_wall=" + wall_post,
success: function () {
//$('ul#posts').append(wall_post).fadeIn('slow');
//$(wall_post).appendTo('ul#posts').fadeIn("slow");
$('ul#posts').append(wall_post).fadeIn('slow');
}
});
这比之前的jsfiddle更合适
请参阅注释以了解早期解决方案的问题 您现在正在使用字符串来处理,但不总是有效。。所以我应该做的是把它变成这样的对象:
var wall_post = $('<li>[.. rest of html structure ..]</li>');
var message_wall = $('#message_wall').attr('value');
$.ajax({
type: "GET",
url: "insert.php",
// why are you sending the wallpost?? why getting you HTML from PHP??
// but i think its the message_wall variable you ment?
data: "message_wall=" + wall_post,
success: function () {
$('ul#posts').append(wall_post)
wall_post.hide(); // instant hide the wall_post
wall_post.fadeIn('slow'); // let is fadein slow
}
});
var wall_post=$(“[…html结构的其余部分] ”);
var message_wall=$('#message_wall').attr('value');
$.ajax({
键入:“获取”,
url:“insert.php”,
//你为什么要发送wallpost?为什么要从PHP获取HTML??
//但我认为这是你的信息?
数据:“message_wall=“+wall_post,
成功:函数(){
$('ul#posts')。附加(wall#u post)
wall_post.hide();//立即隐藏wall_post
wall_post.fadeIn('slow');//让fadeIn慢一点
}
});
@gansdeep的答案是完美的,即
$('ul#posts').append($(wall_post).hide().fadeIn('slow'));
请带上一个来自教程的样本@YYTG看起来像是在用java脚本编写HTML结构,考虑使用Stask.js模板引擎,非常有帮助。问题是我想淡入只附加的
data
I quest您使用变量message\u wall
$('ul#posts').append($(wall_post).hide().fadeIn('slow'));