这有什么问题?
$('body').append("<div class='message success'>Upload successful!</div>");
$('.message').delay(2000).remove();
我想附加一个成功消息到我的HTML文档,但只有2秒。
之后,div应该再次删除。
我在这里做错了吗?
问候
解决方法
直接使用
setTimeout()(
.delay()在内部使用)在这里更简单,因为
.remove()不是一个排队的函数,整体应该看起来像这样:
$('body').append("<div class='message success'>Upload successful!</div>");
setTimeout(function() {
$('.message').remove();
},2000);
You can give it a try here。
.delay()是用于动画(或任何命名的)队列,要使用它,你必须做类似的事情:
$("<div class='message success'>Upload successful!</div>").appendTo('body')
.delay(2000).queue(function() { $(this).remove(); });
Which works,here …但是只是过度杀伤和极低效率,为了链接IMO。通常你也必须调用dequeue或下一个函数,但是因为你要移除元素… …