在纯JavaScript中为自定义插件创建ready事件

时间:2019-04-10 12:51:00

标签: javascript plugins dom-events document-ready

我已经用纯JavaScript创建了一个插件,并希望创建一个事件,当我的插件准备就绪时将触发该事件。

以便其他一些JavaScript代码可以订阅该事件并在插件准备好后立即采取行动。

目前,我正在采用以下一种简单方法。

var pluginLoadEvent = new CustomEvent(
  "plugin-ready",{
    bubbles: true,
    cancelable: true
  }
);

并在插件准备好后分派此事件:

document.dispatchEvent(pluginLoadEvent);

该事件的订阅方式如下:

document.addEventListener('plugin-ready',window.function_after_plugin_ready);

问题在于,我的CustomEvent是在与订阅不同的文件中创建和调度的,这会导致竞态条件问题,其中在订阅之前调度事件。

如何确保订阅在发送之前发生?

0 个答案:

没有答案