1、js添加节点createElement:
html代码:
<div id="div1"> <p id="p1">这是一个段落</p> <p id="p2">这是另一个段落</p> </div>js代码:
/*1.创建新的<p>元素*/ var para=document.createElement("p"); /*2.向<p>元素添加文本(首先创建文本节点),(此段代码创建了一个文本节点)*/ var node=document.createTextNode("这是新段落"); /*向<p>元素追加这个文本节点*/ para.appendChild(node); /*最后您必须向一个已有的元素追加这个元素*/ /*3.这段代码找到一个已有的元素*/ var element=document.getElementById("div1"); /*4.这段代码向这个已有的元素追加新元素*/ element.appendChild(para);2、js删除已有的节点removeChild
html代码:
<div id="div1"> <p id="p1">这是一个段落。</p> <p id="p2">这是另一个段落。</p> </div>js代码:
/*找到父元素*/ var parent=document.getElementById("div1"); /*找到子元素*/ var child=document.getElementById("p1"); /*将子元素从父元素中删除*/ parent.removeChild(child);提示:如果能够在不引用父元素的情况下删除某个元素,就太好了。不过很遗憾。DOM 需要清楚您需要删除的元素,以及它的父元素。这是常用的解决方案:找到您希望删除的子元素,然后使用其 parentNode 属性来找到父元素:
var child=document.getElementById("p1"); child.parentNode.removeChild(child);注意:这里的parentNode和child必须是父子关系,不能仅仅是包含与被包含:
el.parentNode.parentNode.parentNode.removeChild(el);上面这段代码就是我爱模板网写的,发现提示:Uncaught NotFoundError: Failed to execute 'removeChild' on 'Node': The node to be removed is not a child of this node 的错误,原因就是 removeChild 的前者和后者并非父子关系。