Как работают коллбеки?
Мб на таком примере будет проще.// асинхронная функция, которое аргументом передаем callback
function asyncFunction(callback) {
	setTimeout(function() {
  	callback('Hello, World!'); // вызываем callback и передаем ему ответ 'Hello, World'
  }, 2000);
}

// Вызываем асинхронную функцию, но чтоб получить ответ, нужно передать callback
// Т.е передаем другую функцию
asyncFunction(function(response) {
	alert(response); // выводим ответ.
});
В JavaScript можно передавать одну функцию в другую функцию, и вызвать ее там, в нужный момент, вот и все.var callbackFunc = function (callbackText) { // описываем наш колбек, это обычная функция
  console.log("callbackFunc say :: " + callbackText);
};
var runCallbackFunction = function (callbackToRunFunc) { // это функция, которая запустит коллбек
  callbackToRunFunc("run as callback")
}
runCallbackFunction(callbackFunc); // запускаем функцию которая запустить переданный в параметры колбек