Я пытаюсь уменьшить код и упростить что-то, используя повторно используемый метод для выполнения асинхронных вызовов ajax.Я на самом деле переключаюсь на YUI 3 с jQuery и очищаю вещи в процессе.Это, наверное, очень легко для вас, ребята из javascript, обнаружить, но я пытался выяснить, как мне вызвать мой обратный вызов без утечки памяти.Если я смотрю IE в диспетчере задач, то память очень быстро увеличивается (функция вызывается каждые 1,5 секунды).
По сути, у меня есть обычная веб-страница, на которой есть функция, которую я хочу вызвать после завершения ajax.Я обновляю пользовательский интерфейс и устанавливаю другие переменные, которые являются только частью страницы.У меня есть файл javascript, в который я помещаю метод, который фактически делает вызов ajax.Когда я использую обратный вызов, который я передаю этому методу, он протекает.
файл javascript:
function doAjaxRequest(url, callback) {
YUI().use('io',
function (Y) {
var cb =
{
timeout: 5000,
on: {
success: function (x, o) {
callback(o.responseText);
},
failure: function (x, o) {
callback("");
}
}
}
Y.io(url, cb);
});
}
веб-страница:
doAjaxRequest(myUrl, showContent); // Called every couple seconds
function showContent(o) {
document.getElementById('ajaxcontent').innerHTML = o;
// Other Stuff Removed
}
Если я закомментируюлиния обратного вызова не протекает.Мне нужно сделать обратный вызов по-другому, я просто не знаю, что это такое.