然后jQuery AddClass删除一个类

在我的Rails应用程序中,当用户点击Save按钮时,我发送一个Ajax请求,当它发送请求时,我可以返回一些jQuery。

我想做的是添加一个类(保存),有一个延迟,然后删除该类。

所以,我补充说:

$('.button').addClass('saving').delay(2000).removeClass('saving'); 

出于某种原因,它无法正常工作。 我究竟做错了什么?

.delay()实际上是动画。

使用setTimeout()

 $('.button').addClass('saving'); setTimeout(function () { $('.button').removeClass('saving'); }, 2000); 

delay只适用于与动画相关的方法,可以使用queue方法:

 $('.button').addClass('saving').delay(2000).queue(function( next ){ $(this).removeClass('saving'); next(); }); 

http://jsfiddle.net/Rp6Xw/44/

如果某人需要多个添加/删除该类,.dequeue(); 也被重新加以正常运作。

 $('.button').addClass('saving').delay(2000).queue(function(){ $(this).removeClass('saving'); $(this).dequeue(); }); 

试试吧:

 $('.button').addClass('saving').delay(2000, function() { $(this).removeClass('saving') });