callback.call(this) //или that в вашем случае.
Вызов функции в контексте первого аргумента. Почитать:
call,
apply.
Дело в том, что функция вызванная как
x.func() выполняется в контексте
x(за исключением особых случаев), а вызванная как просто
func() - в текущем контексте.
x = {
func: function(){alert(this.a)},
a : 'x.a'
}
this.a = 'current.a';
func = x.func;
x.func();
func();
func.call({a:'dyn.a'});
P.S. Нет такой уж критической надобности переписывать весь уже написанный код. Если ваша страница\приложение в принципе на работает без полученных данных то юзер так или иначе вынужден будет ждать загрузки.)