我想在div上显示一些活动,我正在唱歌以显示一些最近的信息,我正在根据通知的类型给div一个颜色。
我这样做
$("#ru").addClass("brc").delay(500).removeClass("brc");
这是小提琴http://jsfiddle.net/vCDAh/1/
为什么这不起作用?。
答案 0 :(得分:4)
delay函数仅适用于动画队列(如果您传递的队列是第二个参数,则除外)。
您必须使用setTimeout
:
$("#ru").addClass("brc");
setTimeout(function() { $("#ru").removeClass("brc") }, 500);
答案 1 :(得分:2)
来自jQuery API网站http://api.jquery.com/delay/
.delay()方法最适合在排队的jQuery之间延迟 效果。因为它是有限的 - 例如,它没有提供一种方法 取消延迟-.delay()不是JavaScript本机的替代品 setTimeout函数,可能更适合某些用途 例。
在这种情况下,添加类不是效果(并且根本没有队列)
$("#ru").addClass("brc");
setTimeout(function() {
$("#ru").removeClass("brc");
}, 500);