轻松上手,快乐学习!

HTML DOM insertBefore() 方法


实例

在 <ul> 元素的第一个子元素之前插入一个新的 <li> 元素:

var newItem = document.createElement("LI");       // Create a <li> node
var textnode = document.createTextNode("Water");  // Create a text node
newItem.appendChild(textnode);                    // Append the text to <li>

var list = document.getElementById("myList");    // Get the <ul> element to insert a new node
list.insertBefore(newItem, list.childNodes[0]);  // Insert <li> before the first child of <ul>
亲自试一试 »

页面下方有更多实例。


定义和用法

insertBefore() 方法将节点作为子节点插入,就在您指定的现有子节点之前。

提示: 如果要使用文本创建新的列表项,请记住将文本创建为附加到<li>元素的文本节点,然后将<li>插入列表。

还可以使用 insertBefore 方法插入/移动现有元素(请参阅"更多实例")。


浏览器支持

表中的数字表示支持该方法的第一个浏览器版本。

方法
insertBefore() Yes Yes Yes Yes Yes

语法

node.insertBefore(newnode, existingnode)

参数值

参数 类型 描述
newnode Node object 必需。要插入的节点对象
existingnode Node object 必需。要在之前插入新节点的子节点。如果设置为 null,insertBefore 方法将在末尾插入新节点

技术细节

返回值: Node 节点对象,表示插入的节点
DOM 版本 Core Level 1 Node Object

更多实例

实例

将 <li> 元素从一个列表移动到另一个列表:

var node = document.getElementById("myList2").lastChild;
var list = document.getElementById("myList1");
list.insertBefore(node, list.childNodes[0]);
亲自试一试 »