我通过ajax在页面上推送了一些元素。如何在创作后3秒让它们消失?例如淡出效果?
html由执行多次上传(http://blueimp.github.com/jQuery-File-Upload/)的外部jQuery库推送。上传文件后,插件会在页面上显示:
<div class="template-download fade">
FileName ...
Errors...
</div>
答案 0 :(得分:2)
使用插件的回调函数。例如:
$('#fileupload').bind('fileuploadalways', function (e, data) {
setTimeout(function(){$('div.template-download.fade').fadeOut()}, 3000);
});
...应该在AJAX返回后3000毫秒触发元素上的fadeOut,无论结果如何。
回调对任何类型的AJAX功能都至关重要。通常,您的代码会尽快运行,而无需等待AJAX函数或方法返回任何数据。回调仅在返回结果后运行,并且可以针对特定结果调用特定回调。
其他回调仅适用于成功上传,上传失败等。请阅读https://github.com/blueimp/jQuery-File-Upload/wiki/Options并向下滚动至“回调选项”。
答案 1 :(得分:1)
$("div").html("example example").delay(3000).fadeOut();
这就是我们使用jquery的原因。
编辑@ mblase75评论,
$("div").load('ajax.html').delay(3000).fadeOut();
答案 2 :(得分:0)
这应该是
setTimeout(fadeout(),3000);
function fadeout(){
$("yourid").fadeOut();
}