Javascript 在维护addClass时删除表TR

Javascript 在维护addClass时删除表TR,javascript,jquery,html,css,Javascript,Jquery,Html,Css,好的,我有一张桌子TR,当你按下按钮时,它会被移除。我正在使用animate.css,希望在ajax请求完成后添加一个类。这会将该行滑出,但我还需要删除该行 我的javascript如下所示: $(".remove").click(function(){ var tr = $(this).closest('tr'); var id = $(this).closest('tr').find('.id').html(); var dataString = 'id='+id;

好的,我有一张桌子TR,当你按下按钮时,它会被移除。我正在使用animate.css,希望在ajax请求完成后添加一个类。这会将该行滑出,但我还需要删除该行

我的javascript如下所示:

$(".remove").click(function(){
    var tr = $(this).closest('tr');
    var id = $(this).closest('tr').find('.id').html();
    var dataString = 'id='+id;
    $.ajax({
        type: "POST",
        url: "/admin/deleteEvent/",
        data: dataString,
        success: function() {
            $(tr).addClass('animated bounceOutLeft');
            $(tr).remove();
        }
    });
});
我关注的部分是:

success: function() {
   $(tr).addClass('animated bounceOutLeft');
   $(tr).remove();
}

现在,表中的行消失了,这就像跳过addclass部分来滑出行一样。如何使add类与remove类同时发生?

我认为没有回调可以用来知道addclass何时完成。您可能希望尝试使用setTimeout在一小段时间间隔后触发remove

大概是这样的:

$(tr).addClass('animated bounceOutLeft');
    window.setTimeout(function(){
        $(tr).remove();
},500);
这是一个没有所有ajax内容的工作小提琴

它并不是跳过addClass,而是快速完成,然后立即删除它。您可以尝试添加暂停:setTimeoutfunction{$tr.remove;},3000;或者使用jQuery方法更平滑地转换滑出,这样做了。请输入答案,这样我就可以接受了。更好的是$tr.addClass'animated bounceOutLeft'。delay3000.remove@詹姆同意,这样更好。我已经忘记了延迟。在这种情况下,延迟并不像预期的那样起作用。检查下面使用delay和使用settimeout的文档,delay对于在排队的jquery效果之间添加延迟很有用,但不能替代settimeout。