一、
appendChild()insertBefore()append() 在下prepend() 在上before() p.append("before")after(); p.after("after")remove(); removeClass();
nodetype
nodetype 判断一个节点的类型1 元素节点2 文本节点3 属性节点getAllributeNames() 获得属性节点firstChild 获得第一个子节点
<p id="app">hello world</p><script>var app = document.getElementById("app");var id = app.getAttributeNames("id");console.log(app.nodeType)console.log(app.firstChild.nodeType)console.log(id.nodeType)</script>
childNodes Children
childNodes-->包含所有的子节点(不管文本还是元素都包含)children -->只会获取子节点
<ul><li>hello world</li><li>hello world</li><li>hello world</li><li>hello world</li></ul><script>var app = document.getElementById("app");var childs = app.childNodes;console.log(childs)console.log(children)</script>
获得元素所有节点
var app = document.getElementById("app");var childs = app.childNodes;var arr = [];for(var i=0;i<childs.length;i++){if(childs[i].nodeType == 1){arr.push(childs[i])}}console.log(arr);
增加节点
createElement()
createTextNode()
appendChild()
<div id="app"></div><script>var app = document.getElementById("app");var p = document.createElement("p");var txt = document.createTextNode("hello world");p.appendChild(txt);app.appendChild(p);</script>
给元素添加内容innerHTML
insertBeforeparentNode .insertBefore (newNode,targetNode)
insertBefore向某个元素前面添加节点
var app = document.getElementById("app");var js = document.getElementById("js");var li = document.createTextNode("li");li.innerHTML = "vue";app.insertBefore(li,js);
删除节点
removeChild() 让从元素DOM树,渲染树都消失
<div id="app"><div id="child">child</div></div><script>var app = document.getElementById("app");var child = document.getElementById("child");app.removeChild(child);</script>
替换某个元素
replaceChild(newNode,targetNode)
var app = document.getElementById("app");var child = document.getElementById("child");var p = document.createElement("p");p.innerHTML = "hello world";app.replaceChild(p,child);
克隆节点
node.cloneNode(true);
<div id="app"><div class="one"></div></div><script>var app = document.getElementById("app");var one = document.getElementsByClassName("one")[0];var test = one.cloneNode(true);console.log(test);app.appendChild(test);</script>
二、 操作css
add(); addClass(); this.classList.add("current")remove(); this.classList.remove("current")toggle(); this.classList.toggle("current")contains(); this.classList.contains("current")
