JavaScript htmldom 节点 JavaScript htmldom 导航 JavaScript htmldom 节点列表 添加和删除节点(HTML元素) 创建新的HTML元素(节点) 对HTML DOM添加新的元素,您必须创建元素(节点),然后将它添加到一个现有的元素. <div id="div1"> <p id="p1">This is a paragraph.</p> <p id="p2">This is another paragraph.</p> </div> <script> var para = document.createElement("p"); var node = document.createTextNode("This is new."); para.appendChild(node); var element = document.getElementById("div1"); element.appendChild(para); </script> 让我试试 实例解析 这段代码创建一个 <p> 元素: var para = document.createElement("p"); 添加文本到<p>元素, 必须首先创建文本节点。此代码创建文本节点: var node = document.createTextNode("This is a new paragraph."); 然后必须将文本节点追加到 <p> 元素: para.appendChild(node); 最后,必须将新元素添加到现有元素. 此代码查找现有元素: var element = document.getElementById("div1"); 此代码添加新的元素存在的元素: element.appendChild(para); 创建新的HTML元素 - insertBefore() appendChild() 方法在前面的示例中,将新元素作为父节点的最后一个子项添加. 如果你不想使用appendChild()方法,你可以使用insertBefore()方法: <div id="div1"> <p id="p1">This is a paragraph.</p> <p id="p2">This is another paragraph.</p> </div> <script> var para = document.createElement("p"); var node = document.createTextNode("This is new."); para.appendChild(node); var element = document.getElementById("div1"); var child = document.getElementById("p1"); element.insertBefore(para, child); </script> 让我试试 删除现有的HTML元素 删除一个HTML元素,你必须知道该元素的父元素: <div id="div1"> <p id="p1">This is a paragraph.</p> <p id="p2">This is another paragraph.</p> </div> <script> var parent = document.getElementById("div1"); var child = document.getElementById("p1"); parent.removeChild(child); </script> 让我试试 方法 node.remove() 是在 DOM 4 实现的. 由于浏览器支持不足,你不应该使用它。 实例解析 这个HTML文件包含一个 <div> 元素,它具有两个子节点(两个 <p> 元素): <div id="div1"> <p id="p1">This is a paragraph.</p> <p id="p2">This is another paragraph.</p> </div> 使用id="div1"找到元素: var parent = document.getElementById("div1"); 使用id="p1"找到<p>元素: var child = document.getElementById("p1"); 从父元素删除子元素: parent.removeChild(child); 这将是很好的方法能够删除一个元素,而不涉及父元素. 但很抱歉。DOM需要知道你想要删除的元素,和它的父元素. 这是一种常见的解决方法:找到你想要删除的子元素,并利用其parentNode属性找到父元素: var child = document.getElementById("p1"); child.parentNode.removeChild(child); 替换HTML元素 替换HTML DOM元素,使用replaceChild()方法: <div id="div1"> <p id="p1">This is a paragraph.</p> <p id="p2">This is another paragraph.</p> </div> <script> var para = document.createElement("p"); var node = document.createTextNode("This is new."); para.appendChild(node); var parent = document.getElementById("div1"); var child = document.getElementById("p1"); parent.replaceChild(para, child); </script> 让我试试 JavaScript htmldom 导航 JavaScript htmldom 节点列表