0

我有这个 ajax 提交脚本。它确实正确提交并弹出感谢消息,但它不会在 3.2 秒内淡出。目标是显示“感谢您更新”消息。每次用户单击更新按钮 (#tracking_submit) 时都会弹出几秒钟。

$('#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;   
});
4

2 回答 2

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;   

});
于 2012-09-09T18:27:58.840 回答
0

尝试使用这个:

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

.delay()与其他任何东西都不能很好地配合,因为计时器一直在滴答作响,并且 a.dequeue()在它启动时执行......无论您是否清除了队列并添加了一个全新的队列。

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

于 2012-09-09T18:31:22.860 回答