Всем доброго времени суток. На одном из сайтов заметил, что не прекращается загрузка страницы(индикатор в заголовке вкладки не перестает вращаться). Выяснил, что причина - записи в iframe через document.write(). Код(упрощенно) примерно такой(зависание можно проверить локально):
<!doctype html>
<html>
<meta charset = 'UTF-8'>
<body>
<iframe id="k_c0"></iframe>
<script language="JavaScript">
var d;
d=document.getElementById('k_c0').contentDocument;
d.write('<div> 234</div>');
</script>
</body>
</html>
Какие процессы вызывают крутящийся индикатор? И почему они возникают? Заранее спасибо.
Как сказано в learn.javascript.ru
Метод document.write(str) работает только пока HTML-страница находится в процессе загрузки. Он дописывает текст в текущее место HTML ещё до того, как браузер построит из него DOM.
document.getElementById('k_c0').contentDocument - возвращает document. d.write - записывает в document фрейма и не может записать. Соответственно не может загрузить страницу полностью. Вот она и крутится.
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости