在我的Rails应用程序中,当用户点击Save按钮时发送Ajax请求,当它发送请求时,我可以返回一些jQuery。
我想做的是添加一个类(保存),有延迟然后删除该类。
所以,我补充说:
$('.button').addClass('saving').delay(2000).removeClass('saving');
出于某种原因,它无法正常工作。我做错了什么?
答案 0 :(得分:31)
.delay()实际上是动画。
使用 setTimeout()
$('.button').addClass('saving');
setTimeout(function () {
$('.button').removeClass('saving');
}, 2000);
答案 1 :(得分:12)
delay
仅适用于与动画相关的方法,您可以使用queue
方法:
$('.button').addClass('saving').delay(2000).queue(function( next ){
$(this).removeClass('saving');
next();
});
答案 2 :(得分:3)
如果某人需要多个添加/删除该类,.dequeue();也被重新加以正常运作。
$('.button').addClass('saving').delay(2000).queue(function(){
$(this).removeClass('saving');
$(this).dequeue();
});
答案 3 :(得分:1)
尝试这个:
$('.button').addClass('saving').delay(2000, function() {
$(this).removeClass('saving')
});
答案 4 :(得分:0)
最短路径。
$(".button").addClass("saving").show(0).delay(2000).removeClass("saving");