您的位置:首页 > Web前端 > JavaScript

js DOM节点的创建、插入、删除、查找、替换例子

2016-01-20 10:35 706 查看
DOM节点是我们前端人员必须要了解并撑握的一个知识点了,下面我来介绍一些节点的创建、插入、删除、查找、替换操作方法,希望这些方法来帮助到各位同学哦。
在前端开发中,js与html联系最紧密的莫过于对DOM的操作了,本文为大家分享一些DOM节点的基本操作。

一、创建DOM节点

使用的命令是

var oDiv = document.createElement('div');

这样就创建了一个div标签。

二、插入DOM节点

移动DOM节点也就是把这个节点插入到html文档中的某个地方,这里js给了我们两个方法:

1.appendChild():把节点插入到父节点的末尾。

document.body.appendChild(oDiv); //把div插入到body中,并且位于末尾

2.insertBefore():把节点插入到父节点的某个兄弟节点的前面。

var oP = createElement('p'); //创建一个p节点

document.body.insertBefore(oP,oDiv); //把p节点插入到div的前面

三.删除DOM节点

删除DOM节点的方法是removeChild()。

document.body.removeChild(oP); //删除p节点

四.查找DOM节点

查找DOM节点的方法很多,常用的有:

getElementById() //通过元素Id,唯一性

如html文档如下:

<body>

<div id='box'></div>

</body>

这是可以使用getElementById()获取到id为box的div。

var oDiv = document.getElementById('box');

2.getElementsByTagName() //通过元素的标签名来选择元素

var aDiv = getElementsByTagName('div');

要注意的是,getElementsByTagName()获取的是一组元素,所以如果想取得上面那个id为box的div要在后面加上[0];

var oDiv = getElementsByTagName('div')[0];

五、替换DOM节点

替换DOM节点的方法是replaceChild()。

var oSpan = document.createElement('span'); //创建一个span标签

document.body.replaceChild(oSpan,oBox); //用span标签替换div标签

最常用的DOM操作就是这些了,其他还有很多的方法,就目前而言,各浏览器兼容性不太好,所以还是推荐大家暂时只使用上述这些方法。

补充一个例子:DOM 节点的创建、删除、替换

只要在屏幕上托三个button按钮就可以了,下面就是程序运行时的界面:



<head>

<title></title>

<script type="text/javascript">

function CreateNode() {

var pnode = document.createElement('p');

var tnode = document.createTextNode('烟花三月下扬州');

pnode.appendChild(tnode);

document.body.appendChild(pnode);

}

function ReplaceNode() {

var pnode = document.createElement('p');

var tnode = document.createTextNode('故人西辞黄鹤楼');

pnode.appendChild(tnode);

//获取要替换的p节点

var oldnode = document.getElementsByTagName('p')[0];

oldnode.replaceNode(pnode, oldnode); //此种方法只支持IE

//oldnode.parentNode.replaceChild(pnode,oldnode);//通用的

}

function RemoveNode() {

var oldnode = document.getElementsByTagName('p')[0];

//oldnode.parentNode返回的是p节点的父节点,这里就是body,然后使用body节点的removeChild方法删除其下面的pnode节点

oldnode.parentNode.removeChild(oldnode);

}

</script>

</head>

<body>

<input id="Button1" type="button" value="创建节点" onclick="CreateNode();"/><br/>

<input id="Button2" type="button" value="替换节点" onclick="ReplaceNode();"/><br/>

<input id="Button3" type="button" value="删除节点" onclick="RemoveNode();"/>

</body>

当我点击创建节点时就会出现下面的第一张图片;当我点击替换节点时就是下面的第二张图片的效果;







当我点击删除节点时就是下面的第三张图片,把前面的节点给删除了。

转载自http://www.111cn.net/wy/js-ajax/64107.htm
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: