Упрощённо говоря две функции, запускаемых событиями:
function bondListeners(thisListik) {
// Первая функция
...
bondListeners(affected);
}
$(document).ready(function () {
$('[data-afftype]').on('change', function (e) {
bondListeners(this);
});
$('.vis-ddctype, .vis-cattype').on('change', function (e) {
// Вторая функция
...
});
});
Они могут быть применены к разным элементам, а могут - к одному и тому же, то есть независимы друг от друга. Причём, первая функция может применяться несколько раз по каскаду.
Мне нужно, чтобы, когда эти две функции вызываются одним изменением, вторая функция запускалась только после того, как отработает весь каскад первой функции, так как вторая функция использует значения, получаемые в результате работы первой.
Как этого добиться, кроме отложения работы первой функции через setTimeout на время, заведомо достаточное для отработки этого каскада? Этот вариант выглядит некрасиво для пользователя.