DOM0, DOM1, DOM2, DOM3
2015-11-10 08:58
537 查看
----------------------摘抄自他人笔记(http://itbilu.com/javascript/js/Vyxodm_1g.html),感谢分享----------------------
JavaScript历经了从被人误解到现在的被万众瞩目的转变。随着一些JavaScript编程规范的推出(如:AMD、CMD),其应用范围也从前端一些小功能逐渐扩展到后端和一些大项目中。那么,JavaScript从混乱无序到严谨规范经历的哪些过程,在这些过程中又JavaScript增加了哪些功能特性?
在
在
6。
DOM0
这实际上是未形成标准的试验性质的初级阶段的DOM,现在习惯上被称为
DOM0与DHTML
利用HTML把网页标记为各种元素
利用CSS设置元素样式及其显示位置
利用JavaScript操控页面元素和样式
利用DHTML,看起来可以很容易的控制页面元素,并实现一此原本很复杂的效果(如:通过改变元素位置实现动画)。但事实并非如此,因为没有规范和标准,两种浏览器对相同功能的实现确完全不一样。为了保持程序的兼容性,程序员必须写一些探查代码以检测JavaScript是运行于哪种浏览器之下,并提供与之对应的脚本。
DOM1的出现
在浏览器厂商进行浏览器大站的同时,
DOM2与DOM3
在
JavaScript历经了从被人误解到现在的被万众瞩目的转变。随着一些JavaScript编程规范的推出(如:AMD、CMD),其应用范围也从前端一些小功能逐渐扩展到后端和一些大项目中。那么,JavaScript从混乱无序到严谨规范经历的哪些过程,在这些过程中又JavaScript增加了哪些功能特性?
1. JavaScript的起源
1.1 JavaScript的诞生与发展
JavaScript最初由
Netscape的
Brendan Eich设计,
Netscape在最初将其脚本语言命名为
LiveScript,后来
Netscape在与
Sun合作之后将其改名为
JavaScript。由此看来,
JavaScript只是出于营销考虑,看起来像
Java实则与
Java没有一点关系。
在
JavaScript出现之前,Web浏览器仅是一种能够显示超文本文档的软件;在
JavaScript出现之后,网页的交互性得到明显改善,其内容也不再局限于简单的文本。
JavaScript第一个版本,即:
JavaScript 1.0,在1995年
Netscape Navigator 2浏览器中推出。
在
JavaScript 1.0发布时,
Netscape Navigator浏览器还占主宰地位。
Microsoft在
IE 3.0时发布了
VBScript命名为
JScript。面对微软的竞争,
Netscape在与
Sun联合
ECMA(欧洲计算机制造协会)对
JavaScript语言进行了标准化,即:
ECMA-262(ECMAScript),也就是我们今天的使用
JavaScript语言标准,目前最新标准为ECMAScript
6。
1.2 JavaScript的设计功能
JavaScript最初设计是作为给非程序人员的脚本语言,
JavaScript做为一种解释型脚本语言,通常只能依赖Web浏览器去完成一些操作而不能像动态语言那样独立运行。也正是由于
JavaScript的简单性,使其比较容易的学习和使用。
JavaScript向用户提供了一些操控Web浏览器和Web文档的API,即:BOM(浏览器对象模型)和DOM(文档对象模型)。你可以通过
JavaScript调整浏览的宽、高、位置等,同样你可通过
JavaScript调整Web页面内容的显示、隐藏、表单提交等。
2. DOM的诞生与发展
2.1 DOM
是什么
DOM,文档对象模型(Document Object Model)。
DOM是
W3C(万维网联盟)的标准,
DOM定义了访问
HTML和
XML文档的标准。在
W3C的标准中,
DOM是独于平台和语言的接口,它允许程序和脚本动态地访问和更新文档的内容、结构和样式。
W3C DOM由以下三部分组成:
核心DOM- 针对任何结构化文档的标准模型
XML DOM- 针对 XML 文档的标准模型
HTML DOM- 针对 HTML 文档的标准模型
2.2 DOM
的发展-DOM0、DOM1、DOM2、DOM3的区别
DOM0JavaScript在早期版本中提供了查询和操作Web文档的内容API(如:图像和表单),在
JavaScript中定义了定义了
'images'、
'forms'等,因此我们可以像下这样访问第一张图片或名为“user”的表单:
document.images[0] document.forms['user']
这实际上是未形成标准的试验性质的初级阶段的DOM,现在习惯上被称为
DOM0,即:
第0级DOM。由于
DOM0在
W3C进行标准备化之前出现,还处于未形成标准的初期阶段,这时
Netscape和
Microsoft各自推出自己的第四代浏览器,自此DOM遍开始出各种问题。
DOM0与DHTML
Netscape Navigator 4和
IE4分别发布于1997年的6月和10月,这两种浏览器都大幅扩展了
DOM,使
JavaScript的功能大大增加,而此时也开始出现一个新名词:
DHTML。
DHTML是
Dynamic HTML(动态HTML)的简称。
DHTML并不是一项新技术,而是将HTML、CSS、JavaScript技术组合的一种描述。即:
利用HTML把网页标记为各种元素
利用CSS设置元素样式及其显示位置
利用JavaScript操控页面元素和样式
利用DHTML,看起来可以很容易的控制页面元素,并实现一此原本很复杂的效果(如:通过改变元素位置实现动画)。但事实并非如此,因为没有规范和标准,两种浏览器对相同功能的实现确完全不一样。为了保持程序的兼容性,程序员必须写一些探查代码以检测JavaScript是运行于哪种浏览器之下,并提供与之对应的脚本。
JavaScript陷入了前所未有的混乱,
DHTML也因此在人们心中留下了很差的印象。
DOM1的出现
在浏览器厂商进行浏览器大站的同时,
W3C结合大家的优点推出了一个标准化的
DOM,并于1998年10月完成了
第一级 DOM,即:
DOM1。
W3C将
DOM定义为一个与平台和编程语言无关的接口,通过这个接口程序和脚本可以动态的访问和修改文档的内容、结构和样式。
DOM1级主要定义了HTML和XML文档的底层结构。在
DOM1中,DOM由两个模块组成:
DOM Core(DOM核心)和
DOM HTML。其中,
DOM Core规定了基于XML的文档结构标准,通过这个标准简化了对文档中任意部分的访问和操作。
DOM HTML则在DOM核心的基础上加以扩展,添加了针对HTML的对象和方法,如:JavaScript中的
Document对象
DOM2与DOM3
在
DOM1的基础上
DOM2和
DOM3引入了更多的交互能力,也支持了更高级的XML特性。
DOM2和
DOM3将DOM分为更多具有联系的模块。DOM2级在原来DOM的基础上又扩充了鼠标、用户界面事件、范围、遍历等细分模块,而且通过对象接口增加了对CSS的支持。
DOM1级中的DOM核心模块也经过扩展开始支持XML命名空间。在
DOM2中引入了下列模块,在模块包含了众多新类型和新接口:
DOM视图(DOM Views):定义了跟踪不同文档视图的接口
DOM事件(DOM Events):定义了事件和事件处理的接口
DOM样式(DOM Style):定义了基于CSS为元素应用样式的接口
DOM遍历和范围(DOM Traversal and Range):定义了遍历和操作文档树的接口
DOM3进一步扩展了DOM,在
DOM3中引入了以下模块:
DOM加载和保存模块(DOM Load and Save):引入了以统一方式加载和保存文档的方法
DOM验证模块(DOM Validation):定义了验证文档的方法
DOM核心的扩展(DOM Style):支持XML 1.0规范,涉及XML Infoset、XPath和XML Base
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- Android学习笔记(二九):嵌入浏览器
- Android java 与 javascript互访(相互调用)的方法例子
- JavaScript演示排序算法
- javascript实现10进制转为N进制数
- 2019年开发人员应该学习的8个JavaScript框架
- HTML中的script标签研究
- 对一个分号引发的错误研究
- 异步流程控制:7 行代码学会 co 模块
- ES6 走马观花(ECMAScript2015 新特性)
- JavaScript拆分字符串时产生空字符的原因
- Canvas 在高清屏下绘制图片变模糊的解决方法
- JavaScript 各种遍历方式详解
- IE8开发人员工具教程(二)
- Mootools 1.2教程(2) DOM选择器
- DOM 事件流详解
- 在flex中执行一个javascript方法的简单方式
- Flex结合JavaScript读取本地路径的方法