dom属性是一种用于HTML和XML文档的编程接口,它给文档提供了一种结构化的表示方法,可以改变文档的内容和呈现方式。DOM实际上是以面向对象方式描述的文档模型。DOM定义了表示和修改文档所需的对象、这些对象的行为和属性以及这些对象之间的关系。可以把DOM认为是页面上数据和结构的一个树形表示,不过页面当然可能并不是以这种树的方式具体实现。
在dom中,我们把每一个元素都看成是一个节点,而每一个节点都是一个对象,我们只要把节点当成对象,然后使用对象属性来进行操作。
dom属性有很多,其中parentNode来表示获取当前父节点,childNodes表示子节点集合,firstChild表示第一个子节点,lastChild表示最后一个子节点,previousSibling表示前一个兄弟节点等常用的属性。
实际上DOM是以面向对象的方式来描述的文档模型。DOM定义了表示和修改文档所需的对象和这些对象的行为和属性以及这些对象之间的关系。
通过JavaScript,我们可以重构整个HTML文档。比如添加、移除、改变或重排页面上的项目。
要改变页面上的某个东西,JavaScript就需要获得对HTML文档中所有元素进行访问的入口。这个入口,连同对HTML元素进行添加、移动、改变或移除的方法和属性,都是通过文档对象模型来获得的(DOM)。
当我们在使用dom的时候,把所有的文档都放在内存中,并且dom是可以支持XPath,增加了易用性。但是唯一的缺点就是解析速度慢,占用了很多内存,效率也变得低下。