Я вижу две проблемы с вашим кодом.
Первое решение (я думаю: -))
Когда загружается ваш iframe, запускается javascript. Javascript присоединяет наблюдателя к ссылке родительского документа8.
Внутри наблюдателя вы определяете другую функцию (onCreate). Эта функция будет работать в контексте iframe, заставляя объект документа ссылаться на iframe, а не на основной документ. Когда вы удаляете ссылку 8 из iframe, чтобы переместить ее в основной документ, document.getElementById ("top") станет нулевым - отсюда ошибка.
Возможно, измените его на:
parent.document.getElementById("top").innerHTML = "<img src=\"/img/spinner_small.gif\">";
Вторая проблема (которая на самом деле не является проблемой в данном конкретном случае) заключается в том, что если вы переместите весь промежуток (включая скрипт) в основной документ, javascript снова будет работать в контексте основного документа. В вашем случае вы должны увидеть сообщение об ошибке или предупреждение после перемещения содержимого, указывающее, что родительский элемент является нулевым (или похожим).
Чтобы устранить вторую проблему, верните данные iframe в два деления или аналогичные. Затем скопируйте только div с html в основной документ.