JS实现添加,替换,删除节点元素的方法


Posted in Javascript onJune 30, 2016

本文实例讲述了JS实现添加,替换,删除节点元素的方法。分享给大家供大家参考,具体如下:

一直以来,对于节点操作比较纠结,特别是插入到某某节点之后.居然没有这个方法,以前的我写的方法有问题,是把新节点插入到旧节点的里面去了,还是该用insertBefore方法可以实现

下面是方法:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
 <!-- Created by TopStyle Pro Trial Version - www.bradsoft.com -->
 <title>page85删除替换插入</title> 
</head>
<body onload="insertMessageafter()">
 <p id="p1">Hello World</p>
</body>
</html>
<script>
 function removeMessage(){
 var op = document.getElementByIdx_x("p1");
 //document.body.removeChild(op);
 //op.parentNode返回父类节点
 op.parentNode.removeChild(op);
 }
 function replaceMessage(){
 var newop = document.createElement_x("p");
 newop.appendChild(document.createTextNode("Hello Java"));
 //alert(newop.innerHTML);
 var oldop = document.getElementByIdx_x("p1");
 //document.body.removeChild(op);
 //op.parentNode返回父类节点
 oldop.parentNode.replaceChild(newop,oldop);
 //document.body.replaceChild(newop,oldop)
 }
 function insertMessagebefore(){
 var newop = document.createElement_x("p");
 newop.appendChild(document.createTextNode("Hello Java"));
 var oldop = document.getElementByIdx_x("p1");
 oldop.parentNode.insertBefore(newop,oldop);
 }
 function insertMessageafter(){
 var newop = document.createElement_x("p");
 newop.appendChild(document.createTextNode("Hello Java"));
 var oldop = document.getElementByIdx_x("p1");
 insertafter(newop,oldop);
 }
 function insertbefore(newnode,oldnode){
 oldnode.parentNode.insertBefore(newnode,oldnode);
 }
 function insertafter(newnode,oldnode){
 //判断oldnode后面还有没有同类别的标记
  var nextnode = oldnode.nextSibling;
 if(nextnode){ //如果没有则为null,则为false,有的话就为true
  oldnode.parentNode.insertBefore(newnode,nextnode);
 }else{
  oldnode.parentNode.appendChild(newnode);
 }
 }
</script>

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
JavaScript 应用类库代码
Jun 02 Javascript
我遇到的参数传递中 双引号单引号嵌套问题
Feb 11 Javascript
在次封装easyui-Dialog插件实现代码
Nov 14 Javascript
Javascript将string类型转换int类型
Dec 09 Javascript
技术男用来对妹子表白的百度首页
Jul 23 Javascript
谈一谈JS消息机制和事件机制的理解
Apr 14 Javascript
AngularJS前端页面操作之用户修改密码功能示例
Mar 27 Javascript
bootstrap table单元格新增行并编辑
May 19 Javascript
vue组件之Alert的实现代码
Oct 17 Javascript
vue 数组和对象不能直接赋值情况和解决方法(推荐)
Oct 25 Javascript
详解Nuxt.js Vue服务端渲染摸索
Feb 08 Javascript
JavaScript去掉数组重复项的方法分析【测试可用】
Jul 19 Javascript
JS传值出现中文参数乱码的解决方法
Jun 30 #Javascript
javascirpt实现2个iframe之间传值的方法
Jun 30 #Javascript
老生常谈 js中this的指向
Jun 30 #Javascript
JS使用cookie设置样式的方法
Jun 30 #Javascript
浅谈js和css内联外联注意事项
Jun 30 #Javascript
js传值后台中文出现乱码的解决方法
Jun 30 #Javascript
jQuery绑定自定义事件的魔法升级版
Jun 30 #Javascript
You might like
PHP数字字符串左侧补0、字符串填充和自动补齐的几种方法
2014/05/10 PHP
php自定义函数截取汉字长度
2014/05/15 PHP
php调用KyotoTycoon简单实例
2015/04/02 PHP
PHP中new static()与new self()的比较
2016/08/19 PHP
JavaScript监测ActiveX控件是否已经安装过的代码
2008/09/02 Javascript
js固定DIV高度,超出部分自动添加滚动条的简单方法
2013/07/10 Javascript
jquery中event对象属性与方法小结
2013/12/18 Javascript
js闭包的用途详解
2014/11/09 Javascript
jquery实现Li滚动时滚动条自动添加样式的方法
2015/08/10 Javascript
七夕情人节丘比特射箭小游戏
2015/08/20 Javascript
Jquery常用的方法汇总
2015/09/01 Javascript
js实现仿qq消息的弹出窗效果
2016/01/06 Javascript
Node.js websocket使用socket.io库实现实时聊天室
2017/02/20 Javascript
Vue路由跳转问题记录详解
2017/06/15 Javascript
浅谈jQuery框架Ajax常用选项
2017/07/08 jQuery
js实现九宫格布局效果
2020/05/28 Javascript
[05:09]第二届DOTA2亚洲邀请赛决赛日比赛集锦:iG 3:0 OG夺冠
2017/04/05 DOTA
跟老齐学Python之list和str比较
2014/09/20 Python
Python中动态获取对象的属性和方法的教程
2015/04/09 Python
Django中对数据查询结果进行排序的方法
2015/07/17 Python
详解Python下Flask-ApScheduler快速指南
2018/11/04 Python
使用Python3内置文档高效学习以及官方中文文档
2019/05/19 Python
python+opencv像素的加减和加权操作的实现
2019/07/14 Python
python实现引用其他路径包里面的模块
2020/03/09 Python
python中for in的用法详解
2020/04/17 Python
如何通过命令行进入python
2020/07/06 Python
html5图片上传预览示例分享
2014/04/14 HTML / CSS
天美时手表加拿大官网:Timex加拿大
2016/09/01 全球购物
Kingsoft金山公司C/C++笔试题
2016/05/10 面试题
开业庆典答谢词
2014/01/18 职场文书
会计自荐信范文
2014/03/09 职场文书
市场营销专业毕业生求职信
2014/03/26 职场文书
法制宣传月活动总结
2014/04/29 职场文书
2015年招聘工作总结
2014/12/12 职场文书
2016年圣诞节义工活动总结
2016/04/01 职场文书
python opencv将多个图放在一个窗口的实例详解
2022/02/28 Python