утечка памяти javascript IE6 на основе iframe?
Я загружаю контент, используя iframe через меню с jquery, который обновляет атрибут 'src' iframe, чтобы затем загрузить нужную страницу. Каждая из страниц имеет свой Javascript включает в себя и тяжелый контент.
Код выглядит следующим образом:
$(document).ready(function() {
loadPage('main.php');
});
function loadPage(url) {
$('#applicationFrame').attr('src', url);
}
И iframe на странице индекса выглядит следующим образом:
<iframe id="applicationFrame" application="yes" trusted="yes" frameborder="0" />
(Примечание: я понимаю, что iframe здесь принимает нестандартные атрибуты, но это внутреннее приложение интрасети, работающее в одном из этих Microsoft HTA, в котором они что-то значат.)
В любом случае, пункты меню просто вызывают javascript: loadPage ('what.php') для загрузки любого необходимого контента.
Проблема, с которой я сталкиваюсь, заключается в том, что при каждом последующем щелчке по меню фреймы теряют память, пока в конечном итоге не замедлится сканирование всего приложения. sIEve сообщает следующее:
утечки http://img37.imageshack.us/img37/3997/leaks.png
Столбец утечек здесь растет с каждым кликом (21 -> 44 -> 65) и т. Д.
Осмотр утечек инспектор показывает:
инспектор http://img527.imageshack.us/img527/4430/inspector.png
Который выглядит для меня, как будто это только весь контент iframed, который просочился.
Есть ли способ избежать этого? Я что-то пропустил? Я нашел похожую проблемуВот что есть у dojo, но попытка предложенных решений, похоже, не сработала. Я также пробовал кучу других вещей, как вставилВот но без разрешения.
Это только (удивительно) влияет на IE6, который действительно является единственной целевой аудиторией приложения.