dom和dem可以建模吗(文档对象模型DOM知多少)
1、什么是DOM?
文档对象模型DOM是针对XML但经过扩展用于HTML的应用程序编程接口API,DOM把整个页面映射为一个多层节点结构,HTML或XML页面中的每个组成部分都是某种类型的节点,这些节点又包含着不同类型的数据。通过DOM创建的表示文档的树形图,开发人员获得了控制页面内容和结构的主动权。借助DOM提供的API,开发人员可以轻松自如地删除、添加、替换或修改任何节点。DOM并不只是针对JavaScript的,很多别的语言也都实现了DOM。在Web浏览器中,基于ECMAScript实现的DOM的确已经成为了JavaScript这门语言的一个重要组成部分。
2、为什么要使用DOM?
在Internet Explorer4和Netscape Navigator4分别支持的不同形式的DHTML基础上,开发人员首次无需重新加载网页,就可以修改其外观和内容了。然而,DHTML再给Web技术发展带来巨大进步的同时,也带来了巨大的问题。由于Netscape和微软在开发DHTML方面各持己见,过去那个只编写一个HTML页面就能够在任何浏览器中运行的时代结束了。
对开发人员而言,如果想继续保持Web跨平台的天性,就必须额外多做一些工作。而人们真正担心的是,如果不对Netscape和微软加以控制,Web开发领域就会出现技术上两强割据,浏览器互不兼容的局面。此时,负责制定Web通信标准的万维网联盟W3C开始着手规划DOM。
3、DOM级别
(1)、DOM1级于1998年10月成为W3C的推荐标准。DOM1级由两个模块组成:DOM核心(DOM Core)和 DOM HTML。其中,DOM核心规定的是如何映射基于XML的文档结构,以便简化对文档中任意部分的访问和操作。DOM HTML模块则在DOM核心的基础上加以扩展,添加了针对HTML的对象和方法。DOM1级的目标主要是映射文档的结构。
(2)、DOM2级在原来DOM的基础上又扩充了(DHTML一直都支持的)鼠标和用户界面事件、范围、遍历等细分模块,而且通过对象接口增加了对层叠样式表CSS的支持,DOM1级中的DOM核心模块也经过扩展开始支持XML命名空间。DOM2级引入的新模块如下:
DOM视图(DOM Views):定义了跟踪不同文档视图的接口。
DOM事件(DOM Events):定义了事件和事件处理的接口。
DOM样式(DOM Style):定义了基于CSS为元素应用样式的接口。
DOM遍历和范围:定义了遍历和操作文档树的接口。
(3)、DOM3级则进一步扩展了DOM,引入了以统一方式加载和保存文档的方法,新增了验证文档的方法。DOM3级也对DOM核心进行了扩展,开始支持XML1.0规范,涉及XML Infoset、Xpath和XML Base。
(4)、关于DOM0级:实际上,DOM0级标准是不存在的,所谓DOM0级指的是Internet Explorer4.0和Netscape Navigator4.0最初支持的DHTML。
4、其他DOM标准
除了DOM核心和DOM HTML接口之外,另外几种语言还发布了针对自己的DOM标准。SVG(可伸缩矢量图)1.0、MathML(数学标记语言)1.0、SMIL(同步多媒体集成语言)等都是基于XML的,每种语言的DOM标准都添加了与特定语言相关的新方法和新接口。
5、Web浏览器对DOM的支持
在DOM标准出现了一段时间之后,Web浏览器才开始实现它。微软在IE5中首次尝试实现DOM,但直到IE5.5才算是真正支持DOM1级。在随后的IE6和IE7中,微软没有引入新的DOM功能,而到了IE8才对以前DOM实现中的bug进行了修复。
Netscape直到Netscape6(Mozilla0.6.0)才开始支持DOM。在Netscape7之后,Mozilla把开发重心转向了Firefox浏览器。Firefox3完全支持DOM1级,几乎完全支持DOM2级,甚至还支持DOM3级的一部分。Mozilla开发团队的目标是构建与标准100%兼容的浏览器,而他们的努力也得到了汇报。
目前,支持DOM已经成为浏览器开发商的首要目标,主要浏览器每次发布新版本都会改进对DOM的支持。
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com