JSDOM操作
作者:互联网
div
、p
是元素节点,content
是文本节点,title
是属性节点
创建节点
createElement
创建新元素,接受一个参数,即要创建元素的标签名
let div = document.createElement('div')
createTextNode
创建一个文本节点
let text = document.createTextNode("content");
createAttribute
创建属性节点,可以是自定义属性
let dataAttr = document.createAttribute('action');
consle.log(dataAttr);
获取节点
getElementById() getElementsByClassName() getElementsByName() getElementsByTagName() getElementsByTagNameNS()querySelector
传入任何有效的css
选择器,即可选中单个 DOM
元素(首个):
document.querySelector('div')
document.querySelector('.class')
document.querySelector('#id')
document.querySelector('[name="username"]')
document.querySelector('div+p>span')
querySelectorAll
返回一个包含节点子树内所有与之相匹配的Element
节点列表,如果没有相匹配的,则返回一个空节点列表
let lis=document.querySelectorAll('li')
更新节点
innerHTML
不但可以修改一个DOM
节点的文本内容,还可以直接通过HTML
片段修改DOM
节点内部的子树
let div = document.createElement('div')
div.innerHTML = '123'
innerText、textContent
innerText
不返回隐藏元素的文本,而textContent
返回所有文本
style
DOM
节点的style
属性对应所有的CSS
,可以直接获取或设置
let div = document.createElement('div')
div.style.color='red'
添加
innerHTML
let div = document.createElement('div')
div.innerHTML = '<div id="cla">children</div>'
appendChild
把一个子节点添加到父节点的最后一个子节点
let div = document.createElement('div')
div.innerHTML = '<div id="cla">children</div>'
div.style.color = 'red'
cla.appendChild(div)
insertBefore
把子节点插入到指定位置的前面
parentElement.insertBefore(newElement,谁)
setAttribute
在指定元素中添加一个属性节点,如果元素中已有该属性改变属性值
var div = document.querySelector('id')
div.setAttribute('class', 'red');//第一个参数属性名,第二个参数属性值。
删除节点
删除一个节点,首先要获得该节点本身以及它的父节点,然后,调用父节点的removeChild
把自己删掉
// 拿到待删除节点:
const self = document.getElementById('id');
// 拿到父节点:
const parent = self.parentElement;
// 删除:
const removed = parent.removeChild(self);
removed === self; // true
删除后的节点虽然不在文档树中了,但其实它还在内存中,可以随时再次被添加到别的位置
标签:节点,let,querySelector,createElement,操作,JSDOM,document,div 来源: https://www.cnblogs.com/jingxin01/p/16400910.html