Недавно я работал над некоторыми простыми функциями AJAX, используя MooTools. Моя проблема заключается в следующем коде:
function changePage(id, url) {
var c = false,
r = null;
for (i = 0; i < history.length; i++) {
if(history[i]['id'] === id) {
console.log('cached');
r = history[i].response;
c = true;
}
}
if(!c) {
makeRequest(url, function(response) {
r = response;
history.push({id: id, response: response});
});
}
changeBackground('_background', {color: r.bgColor, image: r.bgImage});
lightboxContents(generateArticle(r.article.id, r.article.title, r.article.body, r.article.timestamp));
return true;
}
Здесь, всякий раз, когда код выполняется (он маршрутизируется с помощью клика), мне отправляется сообщение об ошибке «r» не определен »- утверждение, которое, на мой взгляд, крайне неверно.
Я также попытался заменить 'r' глобальной переменной, используя объект 'window' - та же проблема.
Я когда-нибудь был озадачен этой простой проблемой, и я был бы очень благодарен, если бы кто-то со свежими глазами мог указать на мою ошибку.
Спасибо за ваше время!
Тимон