第十二章:第26节DOM——DOM的介绍

更新于:2017-11-22 13:36:26

楠神说过我们学习JS的目的是什么?我们要用JS做数据验证和页面特效,那问题来了,对数据做验证,那数据从哪里来?这些数据肯定不是程序员写入代码里的,也不是从数据库里获取的,而是用户输入到HTML表单中的准备提交的数据,也就是JS要从HTML元素中提取数据。DOM对象(一组对象的大集合)可以做到这些,所以DOM对象是我们写代码最重要最常用的对象。做页面特效,也要对HTML元素做操作,所以离开DOM对象也不行。


整个DOM对象学习看似复杂,学会很容易。


DOM的官方定义

W3C的文档对象模型(DOM),使程序(JS、ActionScript)可以动态的访问和更新网页样式(CSS)、网页结构(HTML)、网页内容。DOM是独立于平台的一个接口。DOM只是一个标准、定义、规范,它需要浏览器来实现,在浏览器中以“对象”的方式来实现。


DOM的分类

核心DOM:提供了一些公共的属性和方法,这些属性和方法,同时适用时HTML文档和XML文档。

  HTML文档主要用来显示,标记都预定义。

  XML文档主要用来存储数据,标记可以自己定义。

  核心DOM是针对HTML4.01开发的。

XML DOM:针对XML文档定义的属性和方法。

HTML DOM:针对HTML文档定义的属性和方法。

Event DOM(事件DOM):使用事件可以调用不同功能的函数。

CSS DOM:通过JS来直接操作CSS中各属性。


HTML节点树

HTML文档是有一定结构的,有层次关系的一种文档。


1.png


节点类型

DOM就是学习利用javascript如何实现对html标签内容的增、删、改、查等操作。

为了方便javascript语言通过dom操作html比较方便,把html标签的内容划分为以下节点:


Document文档节点:代表整个网页,对应于document对象。是最顶层节点。

Element元素节点:对应于所有的HTML标记。元素节点包含属性节点和文本节点。

Attribute属性节点:每个HTML标记的属性,都是“属性节点”

Text文本节点:对应于HTML标记中的内容。是最底层节点。


document对象


通常是这样的:想要获取页面中某一个节点,需要先从document节点依次往下找节点。


直接使用document对象即可访问到document节点。(所有节点的起点都是document对象。)


document节点下面是元素节点,怎么获取元素节点?每一个元素节点都对应一个元素对象,可以使用document对象的属性或方法获取元素对象


元素对象获取到了,获取属性节点和文本节点就不是什么难题了。


1.png


从上面楠神画的图中可看出,节点的访问主要是重点查找元素节点


遍历下document对象,看看有多少属性(包括方法)


1.png


一共遍历出243个。


打开手册

1.png

手册里对DOM这块介绍得非常丰富,下节开始楠神会讲解(元素)节点对象常用的属性和方法。


本节学习代码》》》