【发布时间】:2010-09-29 07:24:57
【问题描述】:
我不明白为什么这段代码不起作用:
function Messages(type,text) {
console.log("In function Message");
$("#message").clearQueue();
console.log("clearQueue :"+$("#message").queue("fx").length+" effet in queue");
if($("#message").length > 0 && $("#message").not(":visible").length == 1) {
$("#message").slideDown("slow");
}
$("#message").queue(function(){
$(this).delay(5000).fadeOut("slow");
$(this).dequeue();
});
console.log("Adding "+$("#message").queue("fx").length+" effet in queue");
}
这是控制台日志:
In function Message
1346clearQueue :0 effet in queue
1356Adding 2 effet in queue
但似乎 clearQueue 不起作用,因为我有这个:
消息出现,他在 5 秒后消失..
出现消息,4秒后我再次调用“消息”,1秒后#Message消失。
因此,如果多次调用 Message,则延迟不会改变,并且 #Message 在第一次调用后始终消失 5 秒..
【问题讨论】:
标签: jquery queue delay settimeout