Какой ущерб нанесен document.write ()? [дубликат]

9
задан 3 revs, 3 users 92% 26 February 2012 в 17:32
поделиться

2 ответа

Использование document.write () приведет к поломке веб-страницы - уничтожение и перезапись всей модели DOM - если она вызывается после завершения анализа документа. Это считается плохим использованием document.write () и является / было причиной критики многих старых скриптов.

window.onload = function ()
{
    document.write("Oops!");
}

В целом, это приемлемо и довольно широко используется во время синтаксического анализа для динамического добавления чего-либо на страницу синхронным способом:

<div>
  <script type="text/javascript">
  document.write("Well I'll be, your browser supports JavaScript!");
  </script>
</div>

Это в основном используется службами публикации рекламы для добавления рекламы на страницу, а также некоторые API Google используй это.

13
ответ дан 4 December 2019 в 09:12
поделиться

Блокировка страницы , этого достаточно или причина, по которой она используется неправильно.

Когда вы выполняете document.write, как сказал Энди, это синхронно , что означает, что вы должны подождать, прежде чем продолжить работу с остальной страницей.

Я не хочу, чтобы ваш сайт зависал только из-за того, что ваш сервер объявлений не работает. К сожалению, это случай с SO: AD справа используют document.write с использованием сценария с другого сервера, который в случае сбоя блокирует загрузку страницы до истечения времени ожидания. Эта задержка из-за document.write и медленного (часто стороннего) сервера объявлений далеко слишком часто является причиной медленной загрузки сайта.

Дополнительная напыщенная речь: реклама приносит вам деньги за просмотры, хорошо, вам нужно зарабатывать на жизнь. Но не будьте зависимы от них с технической точки зрения, так как их сервер не работает, ваш сайт FUBAR ... размещайте рекламу без блокировки, есть много способов помимо document.write для этого.

8
ответ дан 4 December 2019 в 09:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: