Spec-Zone.ru › Web APIs

DOMImplementation: метод createHTMLDocument()

Базовая Широко доступная

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Метод DOMImplementation.createHTMLDocument() создаёт новый HTML Document.

Синтаксис

createHTMLDocument()
createHTMLDocument(title)

Параметры

title Необязательный

Строка, содержащая заголовок для нового HTML документа.

Возвращаемое значение

Объект нового HTML Document.

Примеры

В этом примере создаётся новый HTML документ и вставляется в <iframe> в текущем документе.

Вот HTML для этого примера:

<body>
  <p>
    Click <a href="javascript:makeDocument()">here</a> to create a new document
    and insert it below.
  </p>
  <iframe id="theFrame" src="about:blank" />
</body>

Вот JavaScript-реализация makeDocument():

function makeDocument() {
  let frame = document.getElementById("theFrame");

  let doc = document.implementation.createHTMLDocument("New Document");
  let p = doc.createElement("p");
  p.textContent = "This is a new paragraph.";

  try {
    doc.body.appendChild(p);
  } catch (e) {
    console.log(e);
  }

  // Copy the new HTML document into the frame

  let destDocument = frame.contentDocument;
  let srcNode = doc.documentElement;
  let newNode = destDocument.importNode(srcNode, true);

  destDocument.replaceChild(newNode, destDocument.documentElement);
}

Код обрабатывает создание нового HTML документа и вставку некоторого контента в него. createHTMLDocument() создаёт новый HTML документ, у которого <title> равен "New Document". Затем мы создаём новый элемент абзаца с некоторым простым содержимым, и новый абзац вставляется в новый документ.

destDocument хранит contentDocument фрейма; это документ, в который мы будем вставлять новый контент. Следующие две строки обрабатывают импорт содержимого из нашего нового документа в контекст нового документа. Наконец, destDocument.replaceChild фактически заменяет содержимое фрейма содержимым из нового документа.

Просмотреть примеры

Возвращаемый документ предварительно сконструирован следующим HTML:

<!doctype html>
<html lang="en-US">
  <head>
    <meta charset="UTF-8" />
    <title>title</title>
  </head>
  <body>
    …
  </body>
</html>

Спецификации

Спецификация
DOM
# ref-for-dom-domimplementation-createhtmldocument①

Совместимость браузеров

Рабочий стол Мобильные
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на IOS Samsung Internet WebView Android
createHTMLDocument 1 12 4 ≤12.1 1 18 4 ≤12.1 1 1.0 4.4

См. также

  • Интерфейс DOMImplementation, к которому он относится.

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/DOMImplementation/createHTMLDocument

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API