javascript与DOM的滥觞

1. JavaScript的起源

1.1 JavaScript的出生与进化

JavaScript最初由NetscapeBrendan 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浏览器还占支配地位。MicrosoftIE 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概念了拜访HTMLXML文档的规范。在W3C的标准中,DOM是独于平台和语言的接口,它同意程序和本子动态地拜会和更新文档的情节、结构和体制。

W3C DOM由以下三局部构成:

  • 核心DOM – 针对其他结构化文档的正经模型
  • XML DOM – 针对 XML 文档的规范模型
  • HTML DOM – 针对 HTML 文档的专业模型

 

2.2 DOM的发展-DOM0、DOM1、DOM2、DOM3的区别

DOM0

JavaScript在早期版本中提供了询问和操作Web文档的内容API(如:图像和表单),在JavaScript中定义了概念了'images''forms'等,由此大家得以像下如此访问第一张图片或名为“user”的表单:

document.images[0]document.forms['user']

这其实是未形成标准的考查性质的初级阶段的DOM,现在习惯上被叫做DOM0,即:第0级DOM。由于DOM0W3C展开专业备化以前出现,还处于未形成标准的初期阶段,这时NetscapeMicrosoft各自推出自己的第四代浏览器,自此DOM遍起始出各个问题。

DOM0与DHTML

Netscape Navigator 4IE4各自发表于1997年的2月和11月,这两种浏览器都大幅扩展了DOM,使JavaScript的效能大大扩大,而此时也初步出现一个新名词:DHTML

DHTMLDynamic HTML(动态HTML)的简称。DHTML并不是一项新技巧,而是将HTML、CSS、JavaScript技术构成的一种描述。即:

  • 应用HTML把网页标记为各样因素
  • 行使CSS设置元素样式及其显示地方
  • 使用JavaScript操控页面元素和体裁

应用DHTML,看起来可以很容易的操纵页面元素,并实现一此原本很复杂的效能(如:通过改动元素地点实现动画)。但真相并非如此,因为没有正式和正式,二种浏览器对同一功能的落实确完全不一致。为了保持程序的兼容性,程序员必须写一些明察暗访代码以检测JavaScript是运作于哪类浏览器之下,并提供与之相应的台本。JavaScript陷于了划时代的糊涂,DHTML也因此在众人心中留下了很差的记念。

DOM1的出现

在浏览器厂商举办浏览器大站的还要,W3C结缘我们的亮点推出了一个准绳的DOM,并于1998年3月完结了第一级 DOM,即:DOM1W3CDOM概念为一个与平台和编程语言无关的接口,通过这些接口程序和本子可以动态的访问和修改文档的情节、结构和样式。

DOM1级重点定义了HTML和XML文档的最底层结构。在DOM1中,DOM由五个模块组成:DOM Core(DOM核心)和DOM HTML。其中,DOM Core规定了遵照XML的文档结构正式,通过那个正式简化了对文档中擅自部分的拜访和操作。DOM HTML则在DOM主题的根底上加以扩张,添加了针对HTML的靶子和模式,如:JavaScript中的Document对象

DOM2与DOM3

DOM1的基础上DOM2DOM3引入了更多的互相能力,也襄助了更尖端的XML特性。DOM2DOM3将DOM分为更多拥有联系的模块。DOM2级在原本DOM的基本功上又扩充了鼠标、用户界面事件、范围、遍历等细分模块,而且经过对象接口增添了对CSS的支撑。DOM1级中的DOM主题模块也由此扩张起来襄助XML命名空间。在DOM2中引入了下列模块,在模块包含了广大新类型和新接口:

  • DOM视图(DOM Views):定义了跟踪不同文档视图的接口
  • DOM事件(DOM 伊芙(Eve)nts):定义了风波和事件处理的接口
  • 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