Это, вероятно, просто мое собственное незнание того, как работают события, но кто-то может объяснить это: пользовательское событие не будет вызываться в верхней части функции, но будет вызываться в обратном вызове внутри этой функции.
Следующие работы (пользовательское событие срабатывает):
function foo() {
$.ajax( ... , function() {
$.event.trigger("custom" , data );
});
}
foo();
Не работает следующее (пользовательское событие не запускается):
function foo() {
$.event.trigger("custom" , data );
$.ajax( ... , function() {
...
});
}
foo();
Привязка события выглядит следующим образом:
$(document).bind("custom custom1 custom2" , function( event, data ) {
...
});
Я действительно хочу, чтобы он срабатывал прямо вверху функции. Любая помощь ценится!
ПРИМЕЧАНИЕ. Это одинаковая проблема во всех браузерах, с дополнительным аргументом данных или без него.