DOM基本操作和DOM结构树
DOM的定义
DOM完整写法:Document Object Model
DOM定义了表⽰和修改⽂档所需的⽅法。DOM对象即为宿主对象,由浏览器⼚商定义,⽤来操作html和xml功能的⼀类对象的集合。也有⼈
称DOM是html以及xml的标准编程接⼝。
查看元素节点
document代表整个⽂档
getElementsByName()需要注意,只有部分标签name可⽣效(表单,表单元素,img,iframe)。此⽅法定义在HTMLDocument.prototype上,即⾮html中的document不能使⽤(`xml document,Element)
getElementsByClassName()类名,ie8和ie8以下的版本中没有,可以过个class⼀起
querySelector()css选择器,在ie7和ie7以下的版本中没有
querySelectorAll()css选择器,在ie7和ie7以下的版本中没有
遍历节点树
parentNode ⽗节点(最顶端的parentNode为document)
childNodes ⼦节点
firstChild第⼀个⼦节点
lastChild最后⼀个⼦节点
nextSibling后⼀个兄弟节点
previousSibling前⼀个兄弟节点
基于元素节点树的遍历
parentElement返回当前元素的⽗元素节点(IE9以下不兼容)
nodeselectorchildren只返回当前元素的元素⼦节点
node.childElementCount === node.children.length当前元素节点的⼦元素节点个数(IE9以下不兼容)
firstElementChild返回的是第⼀个元素节点(IE9以下不兼容)
lastElementChild返回的是最后⼀个元素节点(IE9以下不兼容)
nextElementSibling/previousElementSibling返回后⼀个/前⼀个兄弟元素节点(IE9以下不兼容)
节点的四个属性
nodeType 该节点的类型,只读
nodeName元素的标签名,以⼤写形式表⽰,只读
nodeValue Text节点或Comment节点的⽂本内容,可读写
attributes Element节点的属性集合
节点的⼀个⽅法 Node.hasChildNodes()
节点类型
获取节点类型 nodeType
元素节点 —— 1
属性节点 —— 2
⽂本节点 —— 3
注释节点 —— 8
document —— 9
DocumentFragment —— 11
DOM结构树
DOM结构树.png
getElementById()⽅法定义在Document.prototype上,即Element节点上不能使⽤。
getElementsByName()⽅法定义在HTMLDocument.prototype上,即⾮html中的document不能使⽤(xml document,Element)documentElementsByTagName()⽅法定义在Document.prototype和Element.prototype上
HTMLDocument.prototype定义了⼀些常⽤的属性,body,head分辨指代HTML⽂档中的<body><head>标签
Document.prototype上定义了documentElement属性,指代⽂档的根元素,在HTML⽂档中,他总是指代<html>元素getElementsByClassName,querySelectorAll,querySelector在Document.prototype和Element.prototype类中均有定义
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论