我想添加一个div,并在5秒后删除它。 我试过了
$("#mainContentTD").prepend("<div style='color: #038a00; padding-bottom:10px;'>Your detailes where sucsesfuly... </div>").delay(5000).remove("this:first-child");
答案 0 :(得分:32)
您可以像这样使用setTimeout
:
setTimeout(function(){
$('#divID').remove();
}, 5000);
5000(ms)表示5秒。您应该用您自己的div / element id替换divID
。
您可以使用length
确保div首先存在:
setTimeout(function(){
if ($('#divID').length > 0) {
$('#divID').remove();
}
}, 5000)
答案 1 :(得分:8)
.delay()
方法仅适用于使用标准效果队列或自定义队列的方法。
.delay()
方法最适合延迟排队的jQuery效果。因为它是有限的 - 例如,它没有提供取消延迟的方法 -.delay()
不能替代JavaScript的本机setTimeout
函数,这可能更适合某些用例。
即,您可以使用setTimeout()
:( Demo)
var $elm = $("<div style='color: #038a00; padding-bottom:10px;'>Your detailes where sucsesfuly... </div>");
$("#mainContentTD").prepend($elm);
setTimeout(function() {
$elm.remove();
}, 5000);
或者,您可以使用效果方法删除元素:(Demo)
$("#mainContentTD")
.prepend("<div style='color: #038a00; padding-bottom:10px;'>Your detailes where sucsesfuly... </div>")
.children(':first')
.delay(5000)
.fadeOut(100);