DOMImplementation: Methode createHTMLDocument()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Die Methode DOMImplementation.createHTMLDocument()
erstellt ein neues HTML-Document
.
Syntax
createHTMLDocument()
createHTMLDocument(title)
Parameter
title
Optional-
Ein String, der den Titel des neuen HTML-Dokuments enthält.
Rückgabewert
Ein neues HTML-Document
-Objekt.
Beispiele
Dieses Beispiel erstellt ein neues HTML-Dokument und fügt es in ein <iframe>
im aktuellen Dokument ein.
Hier ist das HTML für dieses Beispiel:
<button id="create-doc">Create new document</button>
<iframe id="theFrame" src="about:blank"></iframe>
Die JavaScript-Implementierung von makeDocument()
folgt:
function makeDocument() {
const frame = document.getElementById("theFrame");
const doc = document.implementation.createHTMLDocument("New Document");
const 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
const destDocument = frame.contentDocument;
const srcNode = doc.documentElement;
const newNode = destDocument.importNode(srcNode, true);
destDocument.replaceChild(newNode, destDocument.documentElement);
}
document.getElementById("create-doc").addEventListener("click", makeDocument);
Der Code übernimmt das Erstellen des neuen HTML-Dokuments und das Einfügen von Inhalten in dieses. createHTMLDocument()
erstellt ein neues HTML-Dokument, dessen <title>
"New Document"
ist. Dann erstellen wir ein neues Absatz-Element mit einfachem Inhalt, und dieser neue Absatz wird in das neue Dokument eingefügt.
destDocument
speichert das contentDocument
des Frames; dies ist das Dokument, in das wir den neuen Inhalt einfügen werden. Die nächsten zwei Zeilen übernehmen das Importieren der Inhalte unseres neuen Dokuments in den Kontext des neuen Dokuments. Schließlich ersetzt destDocument.replaceChild
tatsächlich die Inhalte des Frames mit den Inhalten des neuen Dokuments.
Das zurückgegebene Dokument ist mit folgendem HTML vorstrukturiert:
<!doctype html>
<html lang="en-US">
<head>
<meta charset="UTF-8" />
<title>title</title>
</head>
<body>
…
</body>
</html>
Spezifikationen
Specification |
---|
DOM # ref-for-dom-domimplementation-createhtmldocument① |
Browser-Kompatibilität
Siehe auch
- Die
DOMImplementation
-Schnittstelle, zu der es gehört.