DOM全称为Document Object Model,即文档对象模型。它是一套用来管理控制html文档的规则。而Document节点则是一种具象化的表现形式。假设我们把整个html文档看成是一个对象,那么这个对象就是Document节点。 而我们如何操作控制这个对象的标准,就是DOM。DOM中规定html页面中的所有元素都是节点。
document节点又被叫做document对象。每个载入浏览器的 HTML 文档都会成为 document对象。document对象使我们可以从脚本中对HTML页面中的所有元素进行访问。document是html文档的根节点,每张网页都有自己的document节点。window.document属性就指向这个节点。也就是说只要浏览器开始载入HTML文档,这个节点对象就存在了,可以直接调用。
属性 属性作用doctype,documentElement,body,head返回文档内部的某个节点documentURL,URL,domain,lastModified,location,title,readyState返回文档指定信息anchors,forms,images,links,scripts返回文档内部特定节点的集合 Document节点如何操作页面元素(1)querySelector() 方法
返回匹配指定的CSS选择器的元素节点。如果有多个节点满足匹配条件则返回第一个匹配的节点。如果没有发现匹配的节点则返回null。
querySelectorAll()方法
用来选中页面元素,根据指定的选择器进行筛选。如果有多个元素满足条件,则返回这些元素构成的集合。返回的结果是一个节点列表,不是数组,但能够像数组一样使用列表。如果查找失败不是返回null,而是返回一个空的节点列表。
(2)创建页面元素节点、属性
createElement()方法
生成html元素节点。语法:document.createElement("标签名");
createTextNode()方法
生成文本节点,参数为所要生成的文本节点的内容。
createAttribute()方法
生成一个新的属性对象节点,并返回它。
(3)操作页面元素属性
CSS与JavaScript是两个有着明确分工的领域。前者负责页面的视觉效果,后者负责与用户的行为互动。但是它们毕竟同属网页开发当中的技术,因此不可避免有着交叉和互相配合。所以在整体页面布局的过程中我们推荐使用html+css的方式来编写页面的结构和样式。在细节以及交互模块的编写过程中我们推荐使用js的方式来辅助编写。很显然对于整个html页面来说,css部分所代表的样式就显得更为重要一些。因为这些样式能够决定我们的页面整体显示效果。
元素节点特性方法getAttribute()、setAttribute()和removeAttribute()操作Element节点的CSS样式,最简单的方法之一就是使用节点对象的getAttribute方法、setAttribute方法和removeAttribute方法,读写或删除HTML元素的style属性。
语法:getAttribute('属性名'); setAttribute('属性名','属性值'); removeAttribute('属性名');
元素节点的style属性Element节点本身还提供style属性,用来操作CSS样式。style属性指向一个对象,用来读写页面元素的行内CSS样式。
元素节点的style属性的cssText写法style对象的cssText属性可以用来读写或删除整个style属性。cssText对应的是HTML元素的style属性,所以不用改写CSS属性名。
元素节点的style属性方法setProperty()、getPropertyValue()和removeProperty()style对象提供了三个方法来读写行内css规则:
setProperty(propertyName,value)设置某个CSS属性getPropertyValue(propertyName)读取某个CSS属性removeProperty(propertyName)删除某个CSS属性这三个方法的第一个参数,都是CSS属性名,且不用改写连词线。
