A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 邓连超 中级黑马   /  2012-11-20 20:50  /  1195 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

DOM(document object model) 文档对象模型
其实就是将一些标记型的文档以及文档中的内容当成对象.
?----为什么要将这些文档以及其中标签封装成对象?
!----因为可以再对象中定义其属性和行为,可以方便操作这些对象.

DOM在封装标记型文档时,有三层模型.
DOM三层模型:
DOM1:将html文档封装成对象.
DOM2:将xml文档封装成对象.
DOM3:将xml文档封装成对象.

html,xhtml,xml:这些都是标记型文档.
DHTML:是多个技术的综合体.叫做动态的html.
多个技术包括:
html:负责将数据进行标签的封装.
css:负责标签的样式.
DOM:负责将标签以及标签中的数据封装成对象.
JavaScript:负责通过程序设计方式来操作这些对象.
标签之间存在着层次关系:
html
     |--head
          |--title
          |--base
          |--meat
          |--style
          |--script
     |--body
          |--div
          |--form
               |--input
               |--select
          |--span
          |--a
          |--table
               |--tbody
                    |--tr
                         |--td
                         |--th
          |--dl
               |--dt
               |--dd
通过标签层次,可以形象的看作是一个树形结构.那么我也称标记型文档加载进内存的是一颗DOM树.
这些标签以及标签上的数据都是这颗树上的节点.
当标记型文档加载进内存,那么内存中有了一个对应的DOM树.

DOM对于标记型文档的解析有一个弊端就是文档过大,相对消耗资源.
对于大型文档可以使用SAX这种方式解析.

节点类型:
标签型节点: 类型:1
属性节点: 类型:2
文本型节点: 类型:3
注释型节点: 类型:8
document: 类型:9


注意:标签之间存在空行时,会会出现一个空白的文本节点,在获取节点时一定要注意.
节点的关系:
父节点:parentNode
子节点:childNodes(直接子节点) 返回的是一个节点对象集合.
兄弟节点: 上一个兄弟节点:previousSibling
              下一个兄弟节点:nextSibling

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

1 个回复

倒序浏览
值得学习ing!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马