我可以延迟jQuery addClass吗?

Rya*_*yan 10 jquery addclass delay

有没有办法延迟addClass()jQuery?例如这段代码

$('#sampleID').delay(2000).fadeOut(500).delay(2000).addClass('aNewClass');
Run Code Online (Sandbox Code Playgroud)

当我加载页面时,它的id'sampleID'上已经有了'aNewClass'类.如何解决这个问题呢?我想要的是addClass将在它结束后发生fadeOut().

Dav*_*ave 21

你不能直接延迟一个addClass调用,但是你可以将它包装在一个队列调用中,该调用将一个函数作为一个参数,就像这样

$(this).delay(2000).queue(function(){$(this).addClass('aNewClass')});
Run Code Online (Sandbox Code Playgroud)

看到这篇文章:jQuery:我可以在addClass()之间调用delay()吗?


Sar*_*raz 12

我想要的是addClass将在它结束fadeOut()之后发生.

你可以使用回调函数来fadeOut这样:

$('#sampleID').fadeOut(500, function(){
  $(this).addClass('aNewClass');
});
Run Code Online (Sandbox Code Playgroud)