【发布时间】:2011-06-14 17:13:20
【问题描述】:
我是第一次使用 jQuery.queue(),还没有完全掌握。 有人可以指出我做错了什么吗?
查看萤火虫我仍然看到我的 POST 请求同时触发 - 所以我想知道我是否在错误的地方调用 dequeue()。
另外 - 我怎样才能得到队列长度?
我需要对这些请求进行排队的原因是它会在单击按钮时被触发。并且用户可以快速连续点击多个按钮。
试图剥离我的代码的基本结构:
$("a.button").click(function(){
$(this).doAjax(params);
});
// method
doAjax:function(params){
$(document).queue("myQueueName", function(){
$.ajax({
type: 'POST',
url: 'whatever.html',
params: params,
success: function(data){
doStuff;
$(document).dequeue("myQueueName");
}
});
});
}
【问题讨论】:
-
这个answer,也在 StackOverflow 上,提供了一组很好的示例,包括它与 ajax 调用的使用。
-
我确实尝试过这种方法 - 但我无法让它发挥作用。我看到它没有使用 dequeue() 并且想知道这是否是我的问题?
-
我猜 next() 和 dequeue 做同样的事情?
-
是的,next() 做同样的事情。当你的函数被调用时,它由队列逻辑传入。