DOM:Document Object Model(文档对象模型)
用来将标记型文档封装成对象,并将标记型文档中的所有内容(标签,文本,属性等)都封装成对象
封装成对象的目的是为了更为方便的操作这些文档以及文档中的所有内容.
因为对象的出现就可以有属性和行为被调用.
文档对象模型
文档:标记型文档.
对象:封装了属性和行为的实例,可以被直接调用.
模型:所有标记型文档都具备一些共性特征的一个体现.
标记型文档(标签,属性,标签中封装的数据).
只要是标记型文档,DOM这种技术都可以对其进行操作.
常见的标记型文档:HTML/XML/JSP/ASP/PHP...
DOM这种技术是如何对标记型文档进行操作的呢?
要操作标记型文档必须对其进行解析.
DOM技术的解析方式:将标记型文档解析一棵DOM树,并将树中的内容都封装成节点对象
注意:这个DOM解析方式的好处,可以对树中的节点进行任意操作,比如:增删改查。
弊端:这种解析需要将整个标记型文档加载进内存,意味着如果标记型文档的体积很大,较为浪费内存空间。
DOM是W3C的标准
另一种解析方式:SAX:是由一些组织定义的一种民间常用的解析方式
SAX解析的方式:基于事件驱动的解析,获取数据的速度很快,但是不能对标记进行增删改。
DOM模型有三种:
DOM level 1:将html文档封装成对象。
DOM level 2:在level 1基础上加入了新功能,比如解析名称空间。
DOM level 3:将xml文档封装成了对象。
DHTML:动态的HTML.不是一门语言:是多项技术综合体的简称。
包含:HTML,CSS,DOM,JavaScript
角色:
HTML:负责提供标签,对数据进行封装。目的是便于该标签中的数据进行操作。第一步。
CSS:负责提供样式属性,对标签中的数据进行样式的定义。
DOM:负责将标签型文档以及文档中的所有内容进行解析,并封装成对象,在对象中定义了列多的属性和行为,便于对对象操作。
JS:负责提供程序设计语言,对页面中的对象进行逻辑操作。
DHTML+XMLhttprequest = AJAX
BOM:Browser Object Model 浏览器对象模型
便于操作浏览器
浏览器对应的对象就是window对象。API:DHTML
document:
该对象将标记型文档进行封装.
该对象的作用,是对可以标记型文档进行操作.
是常见的操作就是,想要实现动态效果,需要对节点操作,需要先获取这个节点
想获取节点,必须先获取这个节点所属的文档对象document
常见的操作是获取页面中的节点:
1,getElementById();
2,getElementsByName();
3,getElementsByTagName();