导航
×
   ❮   
HTML CSS JavaScript PHP Go Sass W3C Colors ECMS

JS 教程

JS 简介 JS 如何使用 JS 输出 JS 语法 JS 语句 JS 注释 JS 变量 JS 运算符 JS 条件语句 JS 循环 JS 字符串 JS 数字 JS 函数 JS 对象 JS 日期 JS 数组 JS 类型化数组 JS 集合 JS Map 映射 JS Math JS 正则表达式 JS 数据类型 JS 错误 JS 事件 JS 编程 JS 关键字参考 JS 保留关键字参考 JS 运算符参考 JS 运算符优先级 JS UTF-8 字符 JS UTF-8 符号 JS UTF-8 表情符号 JS 版本

JS 高级教程

JS 对象 JS 函数 JS 类 JS 迭代 JS Promises JS 模块 JS HTML DOM JS Windows JS Web API JS AJAX JS JSON JS jQuery JS 图形

JS 实例

JS 实例 JS HTML DOM JS HTML 输入 JS HTML 对象 JS HTML 事件 JS Browser JS 测验

JavaScript HTML DOM 节点 (元素)


添加和删除节点(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);

varelement = 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() 方法,追加新元素作为父的最后一个子。

除此之外您还可以使用 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 元素,使用 remove() 方法,您需要知晓该元素的父:

实例

<div>
 <p id="p1">This is a paragraph.</p>
 <p id="p2">This is another paragraph.</p>
</div>

<script>
var elmnt = document.getElementById("p1");
elmnt.remove();
</script>
亲自试一试 »

实例说明

这个 HTML 文档是包含了一个带有两个子节点(两个 <p> 元素)的 <div> 元素:

<div>
 <p id="p1">This is a paragraph.</p>
 <p id="p2">This is another paragraph.</p>
</div>

查找要删除的元素:

var elmnt = document.getElementById("p1");

然后对该元素执行 remove() 方法:

elmnt.remove();

remove() 方法在较旧的浏览器中不起作用,请参见下面的示例,了解如何使用 removeChild()


删除子节点

对于不支持 remove() 方法的浏览器,必须找到父节点才能删除元素:

实例

<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>
亲自试一试 »

实例说明

此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);

以下是常见的解决方法:查找要删除的子级,并使用其 parentNode 属性查找父级:

var child = document.getElementById("p1");
child.parentNode.removeChild(child);

替换 HTML 元素

如需替换元素的,请使用 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>
亲自试一试 »

Copyright ©2020-2026 freew3c.com All Rights Reserved 提供的内容仅用于学习和测试,不保证内容的正确性。