Как использовать отложенное с пользовательским событием

Я пишу плагин, который испускает события activating а также activated, Я хочу вызвать событие activated только когда все обработчики событий activating выполнены. я знаю это $.trigger() вызывает обработчики событий синхронно, но проблема в том, что у меня может быть некоторый асинхронный код в моем обработчике событий:

Пример:

$("test").trigger("activating");
$("test").trigger("activated");


$("test").on("activating",function()
{
     $.post("/test",{data:"test"},function()
    {
            //dom modifications here
            ////////////////
            //Here I would like to notify that the event handler is finished, like maybe async.js
    }
});

У меня есть несколько подсказок о $.Deferred & Promises, но я не вижу, как их реализовать, чтобы решить мою конкретную проблему.

Может ли кто-нибудь здесь дать мне решение?

Спасибо

0 ответов

Другие вопросы по тегам