小编典典

jQuery:我可以在 addClass() 等之间调用 delay() 吗?

all

像这样简单的东西:

$("#div").addClass("error").delay(1000).removeClass("error");

似乎不起作用。什么是最简单的选择?


阅读 84

收藏
2022-07-18

共1个答案

小编典典

您可以创建一个新的队列项来删除该类:

$("#div").addClass("error").delay(1000).queue(function(next){
    $(this).removeClass("error");
    next();
});

或者使用出列方法:

$("#div").addClass("error").delay(1000).queue(function(){
    $(this).removeClass("error").dequeue();
});

你需要调用nextor的原因dequeue是让 jQuery 知道你已经完成了这个排队的项目,并且它应该移动到下一个项目。

2022-07-18