aboutsummaryrefslogtreecommitdiff
path: root/files/ru/web/api/document/write/index.html
blob: 1394509e96c40a67b2c9abf5eaab408c3c105eab (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
---
title: Document.write()
slug: Web/API/Document/write
translation_of: Web/API/Document/write
---
<div>{{ ApiRef("DOM") }}</div>

<p>Пишет строку в поток документа, открытый с помощью <a href="/en-US/docs/Web/API/document.open">document.open()</a>.</p>

<div class="note">Замечание: поскольку <code>document.write</code> пишет строку в <strong>поток</strong> документа, вызов <code>document.write</code> для закрытого (но загруженного) документа автоматически вызовет <code>document.open</code>, <a href="https://developer.mozilla.org/en-US/docs/Web/API/document.open#Notes">который очистит документ</a>.</div>

<h2 id="Синтаксис">Синтаксис</h2>

<pre class="brush: js">document.write(<em>разметка</em>);
</pre>

<h3 id="Параметры">Параметры</h3>

<dl>
 <dt><em>разметка</em></dt>
 <dd>Строка, содержащая текст для записи в документ.</dd>
</dl>

<h3 id="Пример">Пример</h3>

<pre class="brush: html">&lt;html&gt;

&lt;head&gt;
  &lt;title&gt;write example&lt;/title&gt;

  &lt;script&gt;
    function newContent() {
      alert("загрузка нового контента");
      document.open();
      document.write("&lt;h1&gt;Долой старое, да здравствует новое!&lt;/h1&gt;");
      document.close();
    }
  &lt;/script&gt;
&lt;/head&gt;

&lt;body onload="newContent();"&gt;
  &lt;p&gt;Какой-то оригинальный контент.&lt;/p&gt;
&lt;/body&gt;

&lt;/html&gt;
</pre>

<h2 id="Замечания">Замечания</h2>

<p>Запись в документ, загруженный без вызова <code><a href="/en-US/docs/Web/API/document.open">document.open()</a>,</code> автоматически вызовет <code>document.open</code>. По окончании записи рекомендуется вызвать <code><a href="/en-US/docs/Web/API/document.close">document.close()</a>,</code> чтобы браузер  завершил загрузку страницы. Записываемый текст разбирается в структурную модель документа. В примере выше элемент <code>h1</code> становится узлом документа.</p>

<p>Если вызов <code>document.write()</code> производится во встроенном HTML теге <code>&lt;script&gt;</code> , вызов <code>document.open() не будет выполнен</code>. Например:</p>

<pre class="brush: html"><code>&lt;script&gt;
  document.write("&lt;h1&gt;Основной заголовок&lt;/h1&gt;")
&lt;/script&gt;</code>
</pre>

<div class="note"><strong>Замечание:</strong> <code>document.write</code> и <code>document.writeln</code> <a href="/en-US/docs/Archive/Web/Writing_JavaScript_for_HTML">не работают в XHTML документах</a> (выводится сообщение "Операция не поддерживается" [<code>NS_ERROR_DOM_NOT_SUPPORTED_ERR</code>] в консоли ошибок). Это случается при открытии локального файла с расширением .xhtml или для любых документов, обрабатываемых с <a href="/en-US/docs/Glossary/MIME_type">типом MIME</a> - <code>application/xhtml+xml</code> . Больше информации доступно по адресу <a class="external" href="http://www.w3.org/MarkUp/2004/xhtml-faq#docwrite">W3C XHTML FAQ</a>.</div>

<div class="note"><strong>Замечание:</strong> <code>document.write</code> в <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script#attr-defer">отложенных</a> или <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script#attr-async">асинхронных</a> сценариях игнорируется и выводится сообщение типа "Проигнорирован вызов <code>document.write()</code> из асинхронно загруженного внешнего сценария" в консоли ошибок.</div>

<div class="note"><strong>Замечание:</strong> В Edge  вызов <code>document.write в </code>iframe более одного раза  прриводит к ошибке SCRIPT70: Доступ запрещен.</div>

<div class="note"><strong>Замечание:</strong> Начиная с версии 55, Chrome не исполняет элементы <code>&lt;script&gt;</code>  вставленные посредством <code>document.write()</code> в случае отсутствия кэша HTTP для пользователей 2G подключения.</div>

<h2 id="Спецификации"><font color="#ffffff" face="x-locale-heading-primary, zillaslab, Palatino, Palatino Linotype, x-locale-heading-secondary, serif"><span style="background-color: #333333; font-size: 24px;">Спецификации</span></font></h2>

<ul>
 <li><a class="external" href="http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-75233634">DOM Level 2 HTML: <code>write()</code> Method</a></li>
 <li><a class="external" href="http://www.w3.org/TR/2011/WD-html5-author-20110705/apis-in-html-documents.html#dynamic-markup-insertion">Dynamic markup insertion in HTML</a></li>
</ul>

<h2 id="См._также">См. также</h2>

<ul>
 <li>{{ domxref("element.innerHTML") }}</li>
 <li>{{ domxref("document.createElement()") }}</li>
</ul>