执行功能时2个条件已被验证:Ajax响应和定时器
问题描述:
我试图模仿这样的事情:执行功能时2个条件已被验证:Ajax响应和定时器
- 上点击一个按钮显示一个模式弹出说“装东西”,具有覆盖
- 在此期间,我执行与jQuery的Ajax调用,并让2秒的计时器开始
- 我需要隐藏模式弹出一次,我从Ajax调用和我的计时器结束的响应。
我的AJAX请求可返回在小于2秒,但我需要用户在弹出来读取该消息,并且可以在2秒后返回(但我需要它返回到继续进行)。
我试图调查$ .when,但我找不到正确设置'计时器'部分的方法。
感谢您的帮助!
答
如果您使用$.when
设置,您可以创建一个延迟,该延迟在x
毫秒后解析;
function timedDeferred(n) {
var deferred = jQuery.Deferred();
setTimeout(function() {
deferred.resolve();
}, n);
return deferred.promise();
}
...然后你可以使用$.when
;
$.when($.ajax(), timedDeferred(2000)).then(function (ajax) {
// "ajax" is an array of the arguments that $.ajax() provides; see
// the bottom of http://api.jquery.com/jQuery.when/
});
精彩,工作就像一个魅力!感谢您如此快速/清晰/简单 – ilPittiz 2013-02-20 17:26:26