2012-09-09 39 views
0

我有這個ajax提交腳本。它確實提交併彈出感謝信息,但它在3.2秒內不會消失。目標是讓消息「感謝您的更新」。每次用戶點擊更新按鈕(#tracking_submit)時彈出幾秒鐘。在Ajax上淡出提交

$('#tracking_submit').click(function(){ 
$.ajax({ 
url: "php/tracking.php", 
    type:'POST', 
    data: dataString, 
    success: function(){ 
      $('#tracking_message').replaceWith("Thank you for updating."); 
     $('#tracking_message').delay(3000).fadeOut(300); 
     }     
    }); 
    return false; 
}); 

回答

0

我解決了這個問題,這樣

$('#tracking_submit').click(function(){ 
    $.ajax({ 
     url: "php/tracking.php", 
     type:'POST', 
     data: dataString, 
     success: function(){ 
      $('#tracking_message').html("Thank you for updating.").fadeIn('slow');    
      setTimeout(function(){$('#tracking_message').fadeOut('slow');},2000); 
     }     
    }); 

    return false; 

}); 
0

嘗試使用這樣的:

setTimeout(function() { $('#foo').fadeOut(); }, 5000);

.delay()因爲計時器保持不與別的玩好滴答和.dequeue()當它啓動時執行......不管你是否清除隊列並添加了一個全新的隊列。

最好直接使用setTimeout()setTimeout()是一個原生的javascript函數。