我使用getJSON
回调呼叫第三方网络服务。该函数没有附加到函数的success
处理程序,因为它是第三方,我也无法编辑代码。当我收到回复时,页面中的一些javascript函数已经执行。
除非我从Web服务收到除setTimeout
方法之外的响应数据,否则我有什么办法可以延迟执行Javascript函数。
答案 0 :(得分:3)
如果你的ajax调用正在运行,你可以使用jQuery的.ajaxStart()
和.ajaxComplete()
事件来引起注意。您可以创建一个bool变量,例如isAjaxRunning
,并将其放在其他javascript周围。因此,如果isAjaxRunning
为真,则不要执行其他javascript。
答案 1 :(得分:1)
如果您有权访问代码,可以通过添加属性
使其同步 async : false
- 那么它不会像普通的ajax那样是异步调用。
如果您可以发布示例代码 - 这将给出清晰的图片。