javascript - jquery 等待多个完成事件

标签 javascript jquery jquery-ui events

我想使用 jQuery 的 load 函数将一些内容加载到一个 div 中,我还想调用 jQuery 的 animate 函数。

$('#div1').load('...', function() {
    // load complete
});

$('html,body').animate({
    ...: ...}, ..., '...', function(){
    // animate complete
});

我不想在调用 animate 之前等待 load 完成,反之亦然。

在此之后,我想调用第三个函数,但我不想调用它,直到 loadanimate 的 complete 事件都被触发.

我该怎么做?

最佳答案

听起来像是 Deferred 的工作:http://api.jquery.com/category/deferred-object/

var load = $.Deferred(function (dfd) {
  $('#div1').load(…, dfd.resolve);
}).promise();

var animate = $('html,body').animate(…);

$.when(load, animate).then(function () {
  // Do your thing here!
});

关于javascript - jquery 等待多个完成事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7432815/

相关文章:

javascript - HTML:使用 div 滚动条滚动变得很慢

jquery - 在桌面滚动上淡入汉堡菜单

jquery - 仅在触摸设备上禁用悬停效果

javascript - JQuery UI拖放后查找列表中元素的索引

jQuery UI 自动完成自定义标记

javascript - 导航栏上的 2 个导航按钮(引导移动设备)

javascript - 使用 Javascript 从 Internet 检索文件

javascript - jquery 如何检测文件输入元素的更改?

javascript - 需要在函数内部全局使用变量

css - 两列 div 周围的 Div 应该在打开内部 div 时动态更改其高度(jQuery-ui portlet)