@dm-usov

Почему document.write('') не стирает html разметку?

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
<title>JavaScript</title>
</head>
<body>
    <h2>Первая программа на JavaScript</h2>
    <script>
    var a = 5 + 8;
    document.write("Результат операции ");
    document.write(a);
    </script>
</body>
</html>


Результат:
5f55fee1d293c342809676.png

Вопрос:
Почему строка "<h2>Первая программа на JavaScript</h2>" не стерлась ?
  • Вопрос задан
  • 96 просмотров
Решения вопроса 1
Tim-A-2020
@Tim-A-2020
<!DOCTYPE html>
<html>

  <head>
    <meta charset="utf-8" />
    <title>JavaScript</title>
  </head>

  <body>
    <h2>Первая программа на JavaScript</h2>
    <script>
      var a = 5 + 8;
      setTimeout(() => {
        document.write("Результат операции ");
        document.write(a);
      },0)

    </script>
  </body>

</html>


Вызов document.write(html) записывает html на страницу «прямо здесь и сейчас». Строка html может быть динамически сгенерирована, поэтому метод достаточно гибкий. Мы можем использовать JavaScript, чтобы создать полноценную веб-страницу и записать её в документ.

Этот метод пришёл к нам со времён, когда ещё не было ни DOM, ни стандартов… Действительно старые времена. Он всё ещё живёт, потому что есть скрипты, которые используют его.

В современных скриптах он редко встречается из-за следующего важного ограничения:

Вызов document.write работает только во время загрузки страницы.

Если вызвать его позже, то существующее содержимое документа затрётся.
https://learn.javascript.ru/modifying-document#a-w...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы