第一章:
完整的JS包括:ECMAscript, DOM , BOM
定义: ECMAscript: ECMAscript 是ECMA-262定义的语言,并不局限于浏览器。这门语言没有输入和输出之类的方法。它是一个语言基准,它之上可以构建更稳健的脚本语言。Web浏览器只是ECMAscript的一个宿主环境。宿主环境实现ECMAscript的基准实现与和环境自身交互必须的拓展。(拓展:比如说DOM)拓展使用的是ECMAscript的核心类型和语法,提供特定于环境的额外功能。其他宿主环境还有服务器端JS平台Node.js,和即将被淘汰的Adobe flash。
如果不涉及浏览器的话,ECMA262定义了如下内容:
1、语法;2、类型;3、语句;4、关键字;5、保留字;6、操作符;7、全局对象
ECMAscript只是对实现这个规范描述的所有方面的一门语言称呼。
1、ECMAscript 版本
1-2.2、DOM
文档对象模型(document object model) 是一个应用编程接口(API)用于在HTML中使用拓展的XML。DOM将整个页面拓展成一组分层的节点。HTML或XML页面的每个组成部分都是一种节点,包含不同的数据。比如下面的HTML页面:
<html>
<head>
<title>Sample Page</title>
</head> <body>
<p> Hello World!</p>
</body>
</html>
(DOM 树)
Dom通过创建表示文档的树,让开发者可以随心所欲的控制网页内容和结构,使用DOM API,可以轻松删除,添加,替换和修改节点。
1、为什么DOM是必须的?
IE4 和 Netscape navigator4支持不同形式的动态HTML(DHTML),开发者首先可以不刷新页面就修改页面内容。但是问题是,由于网景和微软采取不同思路开发DHTML,开发者写一个HTML页面就可以在任何浏览器中运行d好日子结束。
人们担心如果无法控制网景,微软各行其是,那开发者需要面向不同浏览器开发网页,所以为了保持Web的跨平台性,万维网联盟(W3C)开始制定了DOM。
2、DOM级别
DOM Level1: 又Dom core和DOM HTML两个模块 组成。 前者提供了一种映射XML文档,从而方便访问和操作文档任意部分的方式;后者拓展的前者,并增加了特定于HTML的对象和方法。
DOM Level2: 增加了对鼠标和用户界面事件,范围,遍历(迭代DOM节点的方法)的支持,而且通过对象借口支持了层叠样式表(CSS)。另外,DOMLevel1中的DOMCore也包含对XML命名空间的支持。DOMlevel2新增一下模块,以支持新的接口:
- Dom视图;DOM事件;DOM样式;DOM遍历和范wei
…