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>
Спецификации
Совместимость браузеров
| Рабочий стол | Мобильные | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| 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