我有可变数量的要执行的异步事件。我希望在他们全部完成后能够采取进一步的行动。下面的代码片段显示了我尝试使用 jquery 延迟对象调用事件。有人可以帮忙吗?(我知道代码不会按原样运行)。bubble.transitionTo 是异步事件。警报(“完成”);在异步回调完成之前调用,实际上是在它们执行之前。
var events = [];
    for (var i = 0; i < stageBubbles.length; i++) {
        var element = stageBubbles[i];
        var bubble = new Object();
        bubble = this.dataPointLayer.get('#' + element.name)[0];
        bubble.setOpacity(0.5);
        events.push(bubble.transitionTo({
            x: element.x,
            y: element.y,
            radius: element.radius,
            duration: 3,
            easing: 'ease-in',
            callback: function () {
            }
        }));
    }
    $.when.apply(this, events).done(function () { alert('complete'); });