我有一个非常简单的测试页面,用于测试 jquery (1.4.2) 队列和延迟。
for (var i = 1; i <= 5; i++) {
$('#test')
//.delay(50)
.queue(function(next) {
console.log(i);
next();
});
}
现在,当我在 FF 中使用 firebug 运行这段代码时,我得到了预期的结果,1 ~ 5。
但是,如果我取消评论延迟,我会得到 6 次五次?
有人可以帮我澄清一下吗?
最佳答案
i
是一个存储一次 时间并由循环的所有迭代共享的单个变量。没有 .delay()
你正在使用 i
right then 的值,所以这是你所期望的。 与 .delay()
但是,您使用的是 later 的值...后来它是循环结束时的值,6。
关于javascript - jquery 延迟更改排队函数关闭?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5201907/