排他思想:html
自定义属性的操做node
获取属性值程序员
element.属性
//获取属性值 (获取内置属性值——元素自己自带的属性)element.getAttribute('属性')
(主要获取自定义的属性(标准) 程序员自定义的属性)设置元素属性值算法
element.属性 = '值'
element.setAttribute('属性','值')
//自定义属性移除属性app
element.removeAttribute(属性)
H5自定义属性code
H5规定自定义属性data-开头作为属性名而且赋值htm
eg:<div data-index = "1" ></div>;
eg:element.setAttribute('data-index',2);
获取H5自定义属性element
element.getAttribute('data-index')
element.dataset.index
或者element.dataset['index']
ie11才支持(只能获取data-
开头的)
-
连接的单词,获取的时候采起驼峰命名法
data-list-name
——listName
网页中全部的内容都是节点(标签、属性、文本、标签等),在DOM中,节点使用node来表示rem
节点的三个基本属性:nodeType
(节点类型)、nodeName
(节点名称)、`nodeValue(节点值)get
父级节点:node.parentNode
parentNode
属性可返回某节点的父节点,注意是最近的一个父节点null
子节点:
parentNode.childNodes
(标准)
parentNode.children
(非标准)
parentNode.firstElementChild
//返回第一个子元素节点,找不到则返回null
(ie9才支持)
parentNode.lastElementChild
//返回最后一个子元素节点,找不到则返回null
(ie9才支持)
parentNode.children[0]
//既没有兼容性问题又返回第一个子元素
`parentNode.children[parentNode.children.length - 1] // 返回最后一个子元素
兄弟节点
1.node.nextSibling;
nextSibling
返回当前元素的下一个兄弟节点,包含元素节点、文本节点等等,找不到则返回null
;包含全部节点2.node.previousSibling;
previousSilbing
返回当前元素上一个兄弟节点,找不到则返回null
;包含全部的节点3.node.nextElementSibling;
nextElementSibling
返回当前元素下一个兄弟元素节点,找不到则返回null
4.node.previousElemnetSibling;
previousElementSibling
返回当前元素上一个兄弟元素节点,找不到返回null (ie9以上才支持)建立节点
document.createElement('tagName');
document.creatElement()
方法建立由tagName
指定的html
元素。由于这些元素原先不存在,是根据咱们的需求动态生成的,因此也成为动态建立元素节点添加节点
1.node.appendChild(child);
node.appendChild()
方法将一个节点添加到指定父节点的子节点列表末尾,相似于CSS里面after
伪元素2.node.insertBefore(child,指定元素);
node.insertBefore()
方法将一个节点添加到父节点的指定子节点前面,相似于CSS里面的before
伪元素