jQuery: 如何使用setTimeout临时改变背景颜色
jQuery: How to use setTimeout for temporary change of background color
我是 jQuery 的新手,希望有人能帮助我。
我正在尝试临时更改 table 行的背景颜色,然后切换回其原始颜色并执行其他操作,例如在下面的示例中删除该行。
使用我的代码,它删除了正确的行,但在此之前我没有看到该行的突出显示。
我如何让它在下一步之前等待 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();
非常感谢,
麦克
试试这个:
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);
}
我是 jQuery 的新手,希望有人能帮助我。
我正在尝试临时更改 table 行的背景颜色,然后切换回其原始颜色并执行其他操作,例如在下面的示例中删除该行。
使用我的代码,它删除了正确的行,但在此之前我没有看到该行的突出显示。
我如何让它在下一步之前等待 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();
非常感谢, 麦克
试试这个:
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);
}