小码哥的IT人生

HTML DOM insertBefore() 方法

JavaScript基础 2022-06-08 11:29:28小码哥的IT人生shichen

HTML DOM insertBefore() 方法

示例代码:

向列表中插入一个项目:

document.getElementById("myList").insertBefore(newItem,existingItem);

插入之前:

Coffee
Tea

插入之后:

Water
Coffee
Tea

完整实例:

<!DOCTYPE html>
<html>
<body>
<ul id="myList"><li>Coffee</li><li>Tea</li></ul>
<p id="demo">请点击按钮向列表插入一个项目。</p>
<button onclick="myFunction()">试一下</button>
<script>
function myFunction()
{
var newItem=document.createElement("LI")
var textnode=document.createTextNode("Water")
newItem.appendChild(textnode)
var list=document.getElementById("myList")
list.insertBefore(newItem,list.childNodes[0]);
}
</script>
<p><b>注释:</b><br>首先请创建一个 LI 节点,<br>然后创建一个文本节点,<br>然后向这个 LI 节点追加文本节点。<br>最后在列表中的首个子节点之前插入此 LI 节点。</p>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

定义和用法

insertBefore() 方法在您指定的已有子节点之前插入新的子节点。

提示:如果您希望创建包含文本的新列表项,请记得创建文本节点形式的文本,以便追加到 LI 元素中,然后向列表插入这个 LI。

您也可以使用 insertBefore 方法插入/移动已有元素。

实例

把一个列表项从一个列表移动到另一个中:

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

插入之前:

Coffee
Tea
Water
Milk

插入之后:

Milk
Coffee
Tea
Water
亲自试一试

浏览器支持

IE Firefox Chrome Safari Opera
         

所有主流浏览器均支持 insertBefore() 方法。

语法

node.insertBefore(newnode,existingnode)

参数

参数 类型 描述
newnode Node 对象 必需。需要插入的节点对象。
existingnode Node object 可选。在其之前插入新节点的子节点。如果未规定,则 insertBefore 方法会在结尾插入 newnode。

返回值

类型 描述
Node 对象。 您插入的节点。

技术细节

DOM 版本 Core Level 1 Node Object

版权所有 © 小码哥的IT人生
Copyright © phpcodeweb All Rights Reserved
ICP备案号:苏ICP备17019232号-2  

苏公网安备 32030202000762号

© 2021-2024