Node.nodeType - Web API 接口参考 编辑
只读属性 Node.nodeType
表示的是该节点的类型。
描述
nodeType
属性可用来区分不同类型的节点,比如 元素
, 文本
和 注释
。
语法
var type = node.nodeType;
返回一个整数,其代表的是节点类型。其所有可能的值请参考 节点类型常量.
常量
节点类型常量
常量 | 值 | 描述 |
---|---|---|
Node.ELEMENT_NODE | 1 | 一个 元素 节点,例如 <p> 和 <div> 。 |
Node.TEXT_NODE | 3 | Element 或者 Attr 中实际的 文字 |
Node.CDATA_SECTION_NODE | 4 | 一个 CDATASection ,例如 <!CDATA[[ … ]]> 。 |
Node.PROCESSING_INSTRUCTION_NODE | 7 | 一个用于XML文档的 ProcessingInstruction ,例如 <?xml-stylesheet ... ?> 声明。 |
Node.COMMENT_NODE | 8 | 一个 Comment 节点。 |
Node.DOCUMENT_NODE | 9 | 一个 Document 节点。 |
Node.DOCUMENT_TYPE_NODE | 10 | 描述文档类型的 DocumentType 节点。例如 <!DOCTYPE html> 就是用于 HTML5 的。 |
Node.DOCUMENT_FRAGMENT_NODE | 11 | 一个 DocumentFragment 节点 |
已弃用的节点类型常量
以下常量已被弃用,请不要使用。
常量 | 值 | 描述 |
Node.ATTRIBUTE_NODE | 2 | 元素 的耦合属性 。在 DOM4 规范里Node 接口将不再实现这个元素属性。 |
Node.ENTITY_REFERENCE_NODE | 5 | 一个 XML 实体引用节点。 在 DOM4 规范里被移除。 |
Node.ENTITY_NODE | 6 | 一个 XML <!ENTITY ...> 节点。 在 DOM4 规范中被移除。 |
Node.NOTATION_NODE | 12 | 一个 XML <!NOTATION ...> 节点。 在 DOM4 规范里被移除. |
例子
不同的节点类型
document.nodeType === Node.DOCUMENT_NODE; // true
document.doctype.nodeType === Node.DOCUMENT_TYPE_NODE; // true
var fragment = document.createDocumentFragment();
fragment.nodeType === Node.DOCUMENT_FRAGMENT_NODE; // true
var p = document.createElement("p");
p.textContent = "很久很久以前...";
p.nodeType === Node.ELEMENT_NODE; // true
p.firstChild.nodeType === Node.TEXT_NODE; // true
注释
该示例会检查 document 下第一个节点是不是注释,如果不是,则会提醒。
var node = document.documentElement.firstChild;
if (node.nodeType != Node.COMMENT_NODE)
console.log("你应该认真编写代码注释!");
标准
标准 | 状态 | 注释 |
---|---|---|
DOM Node.nodeType | Living Standard | 弃用了 ATTRIBUTE_NODE , ENTITY_REFERENCE_NODE 和 NOTATION_NODE 类型。 |
Document Object Model (DOM) Level 3 Core Specification Node.nodeType | Obsolete | 无修改。 |
Document Object Model (DOM) Level 2 Core Specification Node.nodeType | Obsolete | 无修改。 |
Document Object Model (DOM) Level 1 Specification Node.nodeType | Obsolete | 最初的定义。 |
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论