DOM基础

151 阅读4分钟

1.什么是 DOM

  • DOM( Document Object Model,文档对象模型)是W3C制订的一套技术规范,用来描述 Javascript脚本如何与HTML进行交互的Web标准
  • 加载 HTML 页面时, Web浏览器生成一个树型结构,用来表示页面内部结构。DOM 将这种树型结构理解为由节点组成的DOM树
  • DOM规定了一系列标准接口,允许开发人员通过标准方式访问文档结构、操作网页内容、控制样式和行为等
  • 在DOM中,接口可以理解为就是函数(函数  方法  API  接口  本质上都是一个函数)

e886fa7f-7c84-4ac5-84ae-c08cf5ffe6df.jpg

2.DOM版本

  • 在W3C推出DOM标准之前,市场上已经流行了不同版本的DOM规范,主要包括IE和 Netscape两个浏览器厂商各自制订的私有规范,这些规范定义了一套文档结构操作的基本方法。虽然这些规范存在差异,但是思路和用法基本相同,如文档结构对象、事件处理方式、脚本化样式等。习惯上,我们把这些规范称为DOM0级,虽然这些规范没有统一并实现标准化,但是得到所有浏览器的支持并被广泛应用
  • 1998年W3C对DOM进行标准化,并先后推出了3个不同的版本,每个版本都是在上一个版本的基础上进行完善和扩展。但是在某些情况下,不同版本之间可能会存在不兼容的规定
  1. DOM1级:1998年10月,W3C推出DOM1.0版本规范,作为推荐标准进行正式发布,主要包括两个子规范
  • DOM Core(核心部分):把XML文档设计为树形节点结构,并为这种结构的运行机制制订了套规范化标准,同时定义了创建、编辑、操纵这些文档结构的基本属性和方法
  • DOM HTML:针对HTML文档、标签集合,以及与个别HTML标签相关的元素定义了对象属性和方法
  1. DOM2级:2000年11月,W3C正式发布了更新后的DOM核心部分,并在这次发布中添加了一些新规范,于是人们就把这次发布的DOM称为2级规范,2003年1月,W3C又正式发布了对 DOM HTML子规范的修订,添加了针对HTML4.01和 XHTML1.0版本文档中很多对象、属性和方法.W3C把新修订的DOM规范统一称为DOM2.0推荐版本,该版本主要包括6个推荐子规范
  • DOM2core:继承于 DOM Core子规范,规定了DOM文档结构模型,添加了更多的特性,如针对命名空间的方法等
  • DOM2HTML:继承于 DOM HTML,规定了针对HTML的DOM文档结构模型,并添加了一些属性
  • DOM2 Events:规定了与鼠标相关的事件(包括目标、捕获、冒泡和取消)的控制机制,但不含与键盘相关事件的处理部分
  • DOM2Style(或DOM2Css):提供了访问和操纵所有与Css相关的样式及规则的能力
  • DOM2 Traversal和DOM2 Range:DoM2 Traversal规范允许开发人员通过迭代方式访问DOM
  • DOM2vews:提供了访问和更新文档表现(视图)的能力。
  1. DoM3级:2004年4月,W3C发布了DOM3版本,DOMB3版本主要包括以下3个推荐子规范
  • DOM3Core:继承于DOM2Core,并添加了更多的新方法和属性,同时修改了已有的一些方法
  • DOM3 Load and Save:提供将XML文档的内容加载到DOM文档中,以及将DOM文档序列化为XML文档的能力
  • DOM3 Validation:提供了确保动态生成的文档的有效性的能力,即如何符合文档类型声明

3.document对象

  • Document 对象是是window对象的一个属性,因此可以将document对象作为一个全局对象来访问。当浏览器载入 html文档, 它就会成为 Document 对象
  • 打开控制台输入 document,然后我们就看到了一个document对象,既然是对象,输入 typeof document, 控制打印了 "object"