14

我在这里有一个 jsfiddle - http://jsfiddle.net/stevea/QpNbu/3/ - 它收集outerHTML所有具有class='active'. 令我惊讶的是,即使我注释掉了一些 HTML,如下所示:

<!--      <div>'Some inner text'</div>  -->

outerHTML仍然把它带回来!这不能仍然在 DOM 中,所以我想知道在哪里outerHTML寻找。

感谢您的任何见解。

4

2 回答 2

18

令人惊讶的是, HTML 中的注释实际上是 DOM 的一部分!如果您在此处查看此屏幕截图:

网络检查员

您会看到 google chrome 网络检查器将其呈现为 DOM 的一部分(请注意底部栏如何将其显示为子项div#box1.active。)

对于更具体的文档,如果您查看MDN 上Node.nodeTypeDOM 节点的可能 s ,您会发现s是有效类型之一。COMMENT_NODE

COMMENT_NODE 8

W3还为 DOM 定义了Comment接口:

该接口继承自CharacterData,表示注释的内容,即开头'<!--' 和结尾'-->' 之间的所有字符。请注意,这是 XML 中注释的定义,实际上是 HTML,尽管一些 HTML 工具可以实现完整的 SGML 注释结构。

于 2013-07-13T02:16:40.513 回答
2

HTML 注释是 DOM 的一部分,它们只是被浏览器忽略以显示。

于 2013-07-13T02:22:20.830 回答