楠神说过我们学习JS的目的是什么?我们要用JS做数据验证和页面特效,那问题来了,对数据做验证,那数据从哪里来?这些数据肯定不是程序员写入代码里的,也不是从数据库里获取的,而是用户输入到HTML表单中的准备提交的数据,也就是JS要从HTML元素中提取数据。DOM对象(一组对象的大集合)可以做到这些,所以DOM对象是我们写代码最重要最常用的对象。做页面特效,也要对HTML元素做操作,所以离开DOM对象也不行。
整个DOM对象学习看似复杂,学会很容易。
W3C的文档对象模型(DOM),使程序(JS、ActionScript)可以动态的访问和更新网页样式(CSS)、网页结构(HTML)、网页内容。DOM是独立于平台的一个接口。DOM只是一个标准、定义、规范,它需要浏览器来实现,在浏览器中以“对象”的方式来实现。
核心DOM:提供了一些公共的属性和方法,这些属性和方法,同时适用时HTML文档和XML文档。
HTML文档主要用来显示,标记都预定义。
XML文档主要用来存储数据,标记可以自己定义。
核心DOM是针对HTML4.01开发的。
XML DOM:针对XML文档定义的属性和方法。
HTML DOM:针对HTML文档定义的属性和方法。
Event DOM(事件DOM):使用事件可以调用不同功能的函数。
CSS DOM:通过JS来直接操作CSS中各属性。
HTML文档是有一定结构的,有层次关系的一种文档。
DOM就是学习利用javascript如何实现对html标签内容的增、删、改、查等操作。
为了方便javascript语言通过dom操作html比较方便,把html标签的内容划分为以下节点:
Document文档节点:代表整个网页,对应于document对象。是最顶层节点。
Element元素节点:对应于所有的HTML标记。元素节点包含属性节点和文本节点。
Attribute属性节点:每个HTML标记的属性,都是“属性节点”
Text文本节点:对应于HTML标记中的内容。是最底层节点。
document对象
通常是这样的:想要获取页面中某一个节点,需要先从document节点依次往下找节点。
直接使用document对象即可访问到document节点。(所有节点的起点都是document对象。)
document节点下面是元素节点,怎么获取元素节点?每一个元素节点都对应一个元素对象,可以使用document对象的属性或方法获取元素对象。
元素对象获取到了,获取属性节点和文本节点就不是什么难题了。
从上面楠神画的图中可看出,节点的访问主要是重点查找元素节点。
遍历下document对象,看看有多少属性(包括方法)
一共遍历出243个。
打开手册
手册里对DOM这块介绍得非常丰富,下节开始楠神会讲解(元素)节点对象常用的属性和方法。