2015-02-09 14 views
0

這是我正在嘗試做的...檢查特定的div是否爲空。如果它是空的,立即追加裝載微調(.gif注意)...然後等待3秒並追加一個按鈕,讓我們因爲股利的實際內容沒有加載您報告一個問題:如果div是空的,在顯示按鈕之前延遲...不工作

if($('#this_div').is(':empty')) { 
$('#this_div').append('<img src="../images/ajax-loader.gif">'); 

$('#this_div').delay(3000).append('<button id="report_button" type="button" class="btn btn-info"><span style="font-size 16px;">Click to Report</span></button>'); 
} 

我知道empty部分工作,因爲加載gif顯示正常,所以我的if聲明是好的。但是,該按鈕會在加載gif後立即出現,而不是等待3秒。

我在這裏做錯了什麼?

回答

1

您需要與隊列功能一起使用延遲:

if($('#this_div').is(':empty')) { 
    $('#this_div').append('<img src="../images/ajax-loader.gif">'); 
    $('#this_div').delay(3000).queue(function (next) { 
    $(this).append('<button id="report_button" type="button" class="btn btn-info"/>'); 
    next(); 
    }); 
} 
+0

欲瞭解更多信息檢查此網址:http://www.mattlunn.me.uk/blog/2012/06/jquery-delay-not木材加工適合你/ – MaxZoom 2015-02-09 02:14:11