jQuery:如何使用setTimeout临时更改背景颜色

时间:2015-06-09 10:59:06

标签: javascript jquery settimeout

我是jQuery的新手,希望有人可以帮助我。

我正在尝试暂时更改表格行的背景颜色,然后切换回原始颜色并执行其他操作,例如在下面的示例中删除该行。

使用我的代码,它会删除正确的行,但在此之前我没有看到此行的突出显示。

如何告诉它在下一步之前等待x毫秒(对于其他示例)如何将其设置为在此之后反转回原始颜色 (通常我会使用.css('background-color', ''))。

我的jQuery:

if($(this).closest('table').find('tbody > tr').length > 1) {
    setTimeout(function(){
        $(this).closest('tr').css('background-color', 'red');
    }, 1200);
    $(this).closest('tr').remove();

非常感谢, 麦克

1 个答案:

答案 0 :(得分:1)

试试这个:

   if($(this).closest('table').find('tbody > tr').length > 1) {

       // Change background
       $(this).closest('tr').css('background-color', 'red');

       var that = this;

       // Wait 1.2 seconds, then remove the row
       setTimeout(function(){           
          $(that).closest('tr').remove();
       }, 1200);
    }