当前位置主页 > 资料库 > 前端教程 > JavaScript文档对象模型-DocumentType类型

JavaScript文档对象模型-DocumentType类型

2015-11-25

DocumentType类型在WEB浏览器中并不常用,Firefox、Safari、Opera和Chrome浏览器支持DocumentType类型,而IE浏览器不支持DocumentType类型。DocumentType包含着与文档doctype有关的信息,它有下面的一些特征:

  • nodeType的值为10。
  • nodeName的值为doctype的名称。
  • nodeValue的值null。
  • parentNode是Document。
  • 它的没有子节点。

在DOM1级中,DocumentType对象不能动态创建,而是只能通过解析文档代码的方式来创建。支持它的浏览器会将DocumentType对象保存在document.doctype中。

DOM1级描绘了DocumentType对象的3个属性:nameentitiesnotations。其中,name属性表示文档类型的名称;entities属性是由文档类型描述的实体的NamedNodeMap对象;notations属性是由文档类型描述的符号的NamedNodeMap对象

通常浏览器中的文档使用的都是HTML或XHTML文档类型,所以entitiesnotations都是空列表(列表中的项来自行内文档类型声明)。name属性中保存了文档类型的名称,也就是出现在<!DOCTYPE之后的文本内容。

下面的例子是一个严格型的HTML4.01的文档类型声明的例子:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" 
                      "http://www.w3.org/TR/html4/strict.dtd">                             
                            

DocumentType的name属性中保存的就是“HTML”,可以通过控制台来查看:

console.info(document.doctype.name);                            
                            

IE不支持DocumentType,因此document.doctype的值始终会是null。但是,IE浏览器会错误的将文档类型解释为注释,并且为它创建一个注释节点。

Previous:
上一篇:JavaScript文档对象模型-Comment类型
Next:
下一篇:JavaScript文档对象模型-DOM扩展
返回顶部