如何等待所有Listeners执行自定义jQuery事件?

问题描述 投票:0回答:1
$(document).on('custom-event', listener1 );
$(document).on('custom-event', listener2 );

function listener1() {
    return new Promise((resolve) => {
        setTimeout(resolve, 3000);
    })
}

function listener2() {
    return new Promise((resolve) => {
        setTimeout(resolve, 10000);
    })
}


$(document).trigger('custom-event');
const afterAwaiting = true; // Need to await 10 seconds after previous line of code to execute this statement

我已经触发了自定义 事件 - custom-event.

需要等待所有的Listeners执行其代码。

然后继续执行下一条语句。

javascript jquery events async-await listener
1个回答
0
投票

我找到了解决办法,用 when.

await $.when( $(document).trigger('custom-event') )

const afterAwaiting = true;

浏览器 运行自定义事件 同步 据此

jQuery同步触发自定义事件?

或者即使没有 await

$(document).trigger('custom-event')
© www.soinside.com 2019 - 2024. All rights reserved.