63得票1回答
jQuery的Promise方法是如何工作的?

我不太理解 delegate 和 promise 是什么意思。 根据文档 - delegate 会将选择器和事件绑定到某种包装容器中,可在当前和未来的项目中再次使用。 promise() 如果所有新加载的内容都匹配,则会将其重新映射回最初绑定的位置。也许我并不是真正理解这个 promis...

62得票3回答
jQuery延迟对象 - 等待多个AJAX请求完成

我有一个三层深的延迟Ajax调用链,理想情况下,当最深层完成时,它们将一直向上传递承诺(让我想起了电影《盗梦空间》...“我们需要更深入!”)。 问题是,我一次发送了许多Ajax请求(可能达到数百个),需要推迟到它们全部完成后再执行。我不能指望最后一个请求是最后完成的。function up...

51得票2回答
异步JavaScript - 回调函数 vs 延迟/承诺

可能是重复问题: JavaScript中Deferred、Promise和Future的区别是什么? 最近我在努力提高我的JavaScript应用程序的质量。 我采用的一个模式是使用单独的“数据上下文”对象来为我的应用程序加载数据(之前我是直接在我的视图模型中进行操作)。 ...

50得票2回答
返回已经解决的Promise。

我有一个现有的项目,其中有很多返回 Promise 的异步函数。我正在添加一些缓存,以便在某些情况下异步函数会同步完成,并希望尽可能地缩短/改进这段代码: return $.Deferred(function(def) { def.resolve(); }).promise();...

49得票7回答
如何避免由于背景图片加载延迟而导致页面加载时出现的白色“闪烁”?

问题在于,大多数网站都有背景图片。它们需要时间来加载。通常情况下,如果这些图片被优化并且足够小的话,这不会是一个问题。然而,在我的一些网站上,javascript文件以某种方式在页面上任何其他内容之前加载,即使它们位于页脚中!这会在背景图片加载之前创建一个白色的“闪光”效果。为什么我的java...

49得票3回答
如何确定一个 jQuery 对象是否是延迟对象?

如果我有一个函数,有时返回一个deferred对象,有时返回一个非deferred对象。我如何知道它是哪个?

47得票1回答
jQuery $.Deferred(jQuery 1.x / 2.x)固有的问题

@Domenic写了一篇非常详细的关于jQuery延迟对象失败的文章:你错过了Promise的重点。在这篇文章中,Domenic强调了与其他Promise库(包括Q, when.js, RSVP.js和ES6 Promise)相比,jQuery Promise存在一些缺陷。 我从Domeni...

43得票1回答
Web Workers与Promises的比较

为使网页应用变得具有响应性,您可以使用异步非阻塞请求。我可以想象两种实现方式,一种是使用deferreds/promises,另一种是Web Workers。使用Web Workers会导致引入另一个进程,并且我们要承担来回传递数据的开销。我正在寻找某种性能指标,以帮助了解何时选择简单的非阻塞...

41得票5回答
重试一个附有回调函数的jquery ajax请求的延迟对象

我正在尝试实现一个重试ajax请求的系统,以处理暂时失败的情况。在我的情况下,这是关于在调用刷新WebService恢复会话后,重试失败了401状态码的请求的问题。 问题在于,“done”回调函数在成功重试时不会被调用,而“success”ajax选项回调会被调用。下面是我编写的一个简单示例...

41得票4回答
jQuery延迟对象可以被取消吗?

我有一个需要取消延迟执行的情况。这个延迟执行与一个ajax调用相关联。 为什么我在使用deferreds 我不使用由$.ajax返回的正常xhr对象。我正在使用jsonp,这意味着我不能使用HTTP状态码进行错误处理,而必须将它们嵌入响应中。然后检查这些代码,并相应地标记关联的延迟对象为已...