Skip to content
Advertisement

jQuery AddClass then removing a class

In my Rails application, I send an Ajax request when the user hits the Save button, when it sends the request, I can return some jQuery.

What I’d like to do is add a class (saving), have a delay and then remove the class.

So, I added this:

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

For some reason, it isn’t working. What am I doing wrong?

Advertisement

Answer

.delay() is actually for animations.

Use setTimeout()

$('.button').addClass('saving');

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