我想添加一個div,5秒後刪除它。 我試圖5秒後刪除新的div
$("#mainContentTD").prepend("<div style='color: #038a00; padding-bottom:10px;'>Your detailes where sucsesfuly... </div>").delay(5000).remove("this:first-child");
我想添加一個div,5秒後刪除它。 我試圖5秒後刪除新的div
$("#mainContentTD").prepend("<div style='color: #038a00; padding-bottom:10px;'>Your detailes where sucsesfuly... </div>").delay(5000).remove("this:first-child");
您可以使用setTimeout
這樣的:
setTimeout(function(){
$('#divID').remove();
}, 5000);
5000(MS)是指5秒。您應該用您自己的div /元素ID替換divID
。
可以確保股利存在首先使用length
:
setTimeout(function(){
if ($('#divID').length > 0) {
$('#divID').remove();
}
}, 5000)
的.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);
嗯,也許我應該在發佈之前更新:)但是,第一部分*可能會有用。 – jensgram 2010-12-06 08:02:48
其值得注意的是,檢查div存在是完全沒有必要的,因爲在空的jQuery集合上調用$ .fn.remove()時,jQuery不會出錯。 – tbranyen 2011-04-06 07:25:33