DOM基本操作
document
代表整个文档(html
只是代表根标签)
DOM选择器(查)
(通过方法)
getRlementById
通过id拿到元素(id是唯一标识!但是id出现频率超==少==)(IE8之前的版本 name 也会被选择,现在改了)
getElementsByTagName
通过标签名拿到元素(最==常用==!)getElementsByClassName
好用,但是ie8及以下版本没有(==class==最常用了)getElementsByName
在旧版本浏览器中只有部分标签的name可以生效(但是name 出现频率也很==少==)
下面这两个不怎么用,因为选出来的元素==不是实时==的元素
querySelector
也是document的方法 选择方法类似css 选一个querySelectorAll
选一组 其余和querySelector
相似
一般来说,取得的元素==们==都是类数组。
遍历节点树
parentNode
->父节点(最顶端的parentNode为#document)childNodes
->子节点们firstChild
->第一个子节点laseChild
->最后一个子节点nextSibling
->后一个兄弟节点pervSibling
->前一个兄弟节点overDocument
该属性指向表示整个文档的文档节点
遍历元素节点树
parentElement
->父元素节点 (IE不兼容)children
->元素子节点!!!!node.childElementCount
->等于node.children.length
没啥大用 (IE不兼容)firstElementChild
(IE不兼容)lastElementChild
(IE不兼容)nextElementSibling
(IE不兼容)prevElementSibling
(IE不兼容)
上面这个IE不兼容指的是IE9及IE9以下不兼容(IE9不搞W3C)
增
document.creatElement
document.creatTextNode
document.creatComment
document.creatDocumentFragment
插
PARENTNODE.appendChild
PARENTNODE.insetBefore(a,b)
删
parent.removeChild
child.remove
替换
parent.replaceChild(new,origin)
属性
nodeValue
只有text节点和comment节点拥有,返回内容nodeName
返回元素的标签名nodeType
返回属性的数值常量!!!!attributes
Element节点的属性集合
节点的一个方法
- 每个节点都有一个方法
hasChildNodes
表示是否有子节点(但是文本节点也算子节点就…没啥卵用)
DOM继承树
//等我作图先
DOM基本操作
getRlementById
定义在Document.prototype上,即Element节点不能使用getElementsByName
定义在HTMLDocument.prototype上,即非html中的document不能使用(xml document, Element)getElementsByTagName
定义在Document.prototype和Element.prototype上HTMLDocument.prototype
定义了一些常用的属性,body,head分别指代HTML文档中的<body>,<head>
Document.prototype
定义了documentElement属性,指代文档的根元素,在HTML文档中,他总是指代<html>
元素getElementByClassName,querySeletorAll,querySeletor
在 Document.prototype,Element.prototype类中均有定义
tips:在getElementsByTagName()里面可以写 * 这样就会选出来所有标签
innerHTML
innerText