DOM和DHTML

1. DOM的对象属性
DOM供给了一套属性用于导航、拜会和更新文档内容,其中包括只读种类的属性和可读写种类的属性。

下表是只读种类的属性:
DOM对象属性 返 回 值
FirstChild 归来一个对象(Object),表示第一个孩子节点(child node)。
LastChild 归来一个对象(Object),表示最后一个孩子节点(child node)。
NextSibling 归来一个对象(Object),表示下一个邻接的兄弟节点。
NodeName 归来节点对应的HTML符号。例如:P,Script。对应文本项节点,归来#text。
nodeType 归来节点的种类,1表示此节点是符号(tag),2表示属性(attribute),3表示文本项。
parentNode 归来一个对象(Object),表示目前节点的双亲节点(parent node)。
previousSibling 归来一个对象(Object),表示前一个邻接的兄弟节点。
specified 归来一个布尔型变量(Boolean),表示是否设置了属性值(attribute)。
下表是可读写种类的属性:
DOM对象属性 返 回 值
data 归来一个字符串,表示文本项节点的值。万一是其他种类节点,归来undefined。
nodeValue 归来一个字符串,表示文本项节点的值。万一是其他种类节点,归来null。
下表是DOM中相干属性聚集:

DOM对象属性 返 回 值
attributes 表示节点的属性聚集,穿越id来拜会,例如attributes.id。
childNodes 表示节点的孩子节点聚集,穿越数组索引措施拜会,例如:childNodes[2]。


2.   DOM和DHTML对象模型的比拟

DOM是文档对象化模型(Document Object Model)的简称。利用过DHTML对象模型的开发者定然能极其熟练地垄断HTML版面上的每个符号内容,但万一借助DOM技巧,我们就能够穿越更加直接而且简易的措施到达同样的目标。
梗概

DOM技巧被Internet Explorer 5.0及以上版本的博览器所扶持,它批准一种极其直观且统一的措施将HTML文档举行模型化处理,并借此供给拜会、导航和垄断版面的简易编程接口。穿越 DOM技巧,我们不但能够拜会和更新版面的内容及构造,而且还能垄断文档的风格款式。DOM由W3C组织所提倡,这么,大多数博览器都将最后扶持这项技 巧。

DOM和DHTML对象模型的比拟

能够这么说,DOM是从DHTML对象模型进展而来的。但更准确而言,DOM更象是对DHTML对象模型举行了大约改革的产物。

借助DHTML对象模型技巧,我们能够独自地拜会并更新HTML版面上的对象,每个HTML符号穿越它的ID和NAME属性被垄断,每个对象都具有自己的属性、措施和事件,穿越措施垄断对象,穿越事件引发因果过程。

DOM则要比DTHML对象模型功能更全面,它供给了一个对全副文档的拜会模型,而不但仅再局限于单一的HTML符号(Tag)范围内。DOM将文档描 摹为一个树形(Tree)构造,Tree的每个节点出现为一个HTML符号可能HTML符号内的文本项。树形构造准确地描写了HTML文档中符号间以及文 本项间的互相干联性,这种关系性包括child(孩子)种类、parent(双亲)种类和兄弟(sibling)种类。

利用 DHTML对象模型拜会和更新HTML版面内容时,不可避免地必需查询相干技巧手册。因为HTML对象许多,每个HTML对象又有许多的属性、措施和事 件。然而批准DOM技巧拜会和更新HTML版面内容时,任何手册都能够放在一边了。率先察看一下HTML源代码,推算出版面的Tree构造模型;然后,按 照层次构造联系垄断必需的属性。例如要更新版面上的文本项内容,万一批准DTHML对象模型,必需利用到innerHTML属性,但定然要当心并不是所有 的HTML对象都扶持innerHTML属性;万一批准DOM技巧,凡是修正相干Tree节点都具有的nodeValue属性值即可。

DOM技巧使我们能够得体地沿着文档的树型构造在上、下以及一侧方向做节点导航,从版面的任何地方开始,利用child、parent可能 sibling三种关系性构成的表白式代表版面的另外地方。而DTHML对象模型不包括Tree构造,因而也就不具有版面对象的互相导航功能。当我们从一 个符号对象开始时,不可能用关系表白式来表白相近的符号。固然对于某些符号,例如 <TABLE> ,DHTML对象模型能够供给特异的属性和措施存取相干内容,但告终措施和收获远不及DOM技巧显得统一化和直观化。批准DTHML对象模型拜 会<TABLE> 中的单元(cell)内容时,率先要查询手册确定单元的坐标值i、j,然后再穿越表白式 tableObj.rows[i].cells[j].innerHTML告终拜会。但对于DOM来说,拜会TABLE每个单元的内容将变得极其容易,只 必需发生一个节点导航表白式就能够。

另外,DOM技巧批准我们垄断文档的Tree构造,这包括创立新节点(nodes)、剔除存在的 节点以及在Tree中挪动节点。切实上,这即便厉行创立新符号(tags)、剔除存在的符号以及在文档中挪动符号的过程。DTHML对象模型则不批准改动 文档构造,我们只能垄断现有的对象。

与DHTML对象模型相比拟,DOM只有一个缺憾:DOM不能扶持事件处理,而DTHML对象模型对于文档对象则具有一个普遍的事件处理功能目前,Example对象具有负值了!万一getValues() 的调用者永远也不设置归来的Dimension对象的width 和height值,那么仅凭测验是不可能检测到这类的讹谬。

 

 

转载于: http://ecker03.blog.163.com/blog/static/188877425201162071139355/

 

上面的大概理解为: 通过DOM可以为这个页面创建出 树状结构图,利用DOM的方法可以迅速找到需要的节点,比如通过FirstChild等,找到这个节点后,就开始使用DHTML的东西了,DHTML个人理解为将真个页面的所有标签(我是这么狭隘理解的)封装成了一个个的对象,比如p标签变成了p对象,a链接变成了a对象,每个对象都有自己的属性,方法,事件,样式,集合等信息,在通过DOM找到了需要的DHTML节点对象后,调用这个对象所在的DHTML的方法或者事件或者增加样式的方式来实现页面部分标签的文字或者样式转变的效果------- 这就达到了动态网页的目的!!!

你可能感兴趣的:(DOM_DHTML)