DOMImplementation: createHTMLDocument() 方法
DOMImplementation.createHTMLDocument()
方法创建一个新的 HTML Document
。
语法
js
createHTMLDocument()
createHTMLDocument(title)
参数
title
可选-
一个包含要赋予新 HTML 文档的标题的字符串。
返回值
一个新的 HTML Document
对象。
示例
此示例创建一个新的 HTML 文档,并将其插入到当前文档中的 <iframe>
中。
以下是此示例的 HTML 代码
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>
以下是 makeDocument()
的 JavaScript 实现
js
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 代码
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① |
浏览器兼容性
BCD 表仅在浏览器中加载
另请参见
- 它所属的
DOMImplementation
接口。