我正在阅读 Jeremy Keith 的《Dom Scripting》一书。我读到 DOM 中共有 12 种类型的节点。我只知道其中五个是——
Document
Element
Text
Attribute
Comment
我不知道任何其他节点。请提供我没有的知识。
来自DOM Level 3 规范Node
的接口的 IDL :
interface Node {
// NodeType
const unsigned short ELEMENT_NODE = 1;
const unsigned short ATTRIBUTE_NODE = 2;
const unsigned short TEXT_NODE = 3;
const unsigned short CDATA_SECTION_NODE = 4;
const unsigned short ENTITY_REFERENCE_NODE = 5;
const unsigned short ENTITY_NODE = 6;
const unsigned short PROCESSING_INSTRUCTION_NODE = 7;
const unsigned short COMMENT_NODE = 8;
const unsigned short DOCUMENT_NODE = 9;
const unsigned short DOCUMENT_TYPE_NODE = 10;
const unsigned short DOCUMENT_FRAGMENT_NODE = 11;
const unsigned short NOTATION_NODE = 12;
// ...
}
当您引用一个节点并且需要知道它是什么类型时,该数字很有用(并非所有浏览器都支持常量):
var elem = document.getElementById("example");
console.log(elem.nodeType); // 1
在浏览器控制台中运行for(key in Node) console.log(key, ' = ' + Node[key])
将打印所有支持的节点类型及其数值。