<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>DOM增删改查</title>
<style type="text/css">
div{
border:#306 1px solid;
width:200px;
height:30px;
margin:10px;
}
#div_1{
background-color:#00ccff;
}
#div_2{
background-color:#FFccff;
}
#div_3{
background-color:#cc00ff;
}
#div_4{
background-color:#00FF00;
}
</style>
</head>

<body>
<script type="text/javascript">
//创建并添加节点
//需求:在div_1节点中添加一个文本节点
function crtAndAdd(){
/*
*1、创建一个文本节点。
*2、获取div_1节点。
*3、将文本节点添加到div_1节点中。
*/

//1、创建节点。使用Document中的createTextNode方法
var oTextNode = document.createTextNode("这是一个新的文本");

//2、获取div_1节点
var oDivNode = document.getElementById("div_1");

//3、将文本节点添加到div_1节点中。
oDivNode.appendChild(oTextNode);

}

//需求:在div_1中创建并添加一个按钮节点。
function crtAndAdd2(){
//1、创建一个按钮节点
var oButNode = document.createElement("input");
oButNode.type = "button";
oButNode.value="一个新按钮";

//2、获取div_1节点
var oDivNode = document.getElementById("div_1");

//3、将文本节点添加到div_1节点中。
oDivNode.appendChild(oButNode);
}

//通过另一种方式完成添加按钮
function crtAndAdd3(){
/*
*其实是使用了容器型标签中的一个属性。innerHTML
*这个属性可以设置html文本
*/

//1、获取div_1节点
var oDivNode = document.getElementById("div_1");

oDivNode.innerHTML = "<input type='button' value='有个按钮' />";
oDivNode.innerHTML ="<a href='http://www.baidu.com'>有个超链接</a>";
}

//需求将div_2节点删除
function delNode(){
//1、获取div_2节点。
var oDivNode = document.getElementById("div_2");

//2、使用div节点的removeNode方法删除
//oDivNode.removeNode(true); PS:较少用

//一般使用removerChild方法。删除子节点。
//获取div_2的父节点,然后在用父节点的removeChild,将div_2删除。
oDivNode.parentNode.removeChild(oDivNode);
}

//需求:用div_3节点替换div_1节点。
function updateNode(){
/*
*获取节点div_1和div_3
*使用replaceNode进行替换
*/
var oDivNode_1 = document.getElementById("div_1");
var oDivNode_3 = document.getElementById("div_3");

//oDivNode_1.replaceNode(oDivNode_3);
//建议使用replaceChild
oDivNode_1.parentNode.replaceChild(oDivNode_3,oDivNode_1);
}

//需求:希望用div_3替换div_1,并保留div_3节点。
//其实就是对div_3进行克隆
function cloneDemo(){
var oDivNode_1 = document.getElementById("div_1");
var oDivNode_3 = document.getElementById("div_3");
var oCopyDiv_3 = oDivNode_3.cloneNode(true);

//oDivNode_1.replaceNode(oDivNode_3);
//建议使用replaceChild
oDivNode_1.parentNode.replaceChild(oCopyDiv_3,oDivNode_1);

}

</script>

<input type="button" value="创建并添加节点" οnclick="crtAndAdd3()" />
<input type="button" value="删除节点" οnclick="delNode()" />
<input type="button" value="修改节点" οnclick="updateNode()" />
<input type="button" value="克隆节点" οnclick="cloneDemo()" />
<div id="div_1">

</div>
<div id="div_2">
好好学习,day day up!
</div>
<div id="div_3">
div区域演示文字
</div>
<div id="div_4">
节点的增删该查
</div>

</body>

转载于:https://www.cnblogs.com/aineko/p/3778724.html

节点操作-创建并添加删除节点替换克隆节点相关推荐

  1. DOM基本操作(获取元素、节点的创建和添加、节点的替换和删除)

    获取元素 document.getElementById通过id名字获取节点 <div id="box"><ul><li>1</li> ...

  2. 089_DOM节点动态创建、添加和删除

    1. 创建节点 1.1. 创建元素 document.createElement(tagName); 1.2. 创建文本 document.createTextNode("这是新文本.&qu ...

  3. Java如何使用dom4j获取,添加,删除,查找,设置Element节点呢?

    转自: Java如何使用dom4j获取,添加,删除,查找,设置Element节点呢? 下文笔者讲述DOM4J操作Element节点的示例分享,如下所示 获取文档的根节点 Element rootElm ...

  4. jQuery节点操作创建节点元素删除节点 替换节点复制节点等基本本操作

    节点操作 jQuery中节点操作 查找节点(前面章节已讲) 创建节点 插入节点 删除节点 替换节点 复制节点 创建节点元素 工厂函数$()用于获取或创建节点 $(selector):通过选择器获取节点 ...

  5. js节点的添加 删除 插入 替换

    一.创建元素节点createElement   添加节点 node.appendChild(child)  -->node父级 child 子级 元素追加到最后面 效果图 二.插入节点inser ...

  6. javascript节点的操作 创建、添加、移除、移动、复制

    (1)创建新节点 createDocumentFragment() //创建一个DOM片段 createElement() //创建一个具体的元素 createTextNode() //创建一个文本节 ...

  7. 节点操作-创建createElement||appendChild-/追加-/插入insertBefore-/替换replaceChild-/删除remove-克隆元素 cloneNode(增删改查)

    01-节点操作-创建元素·createElement||appendChild <body><div class="box"><span>我是前 ...

  8. 【web前端】JavaScript DOM元素(节点的创建appendChild(),删除removeChild(),修改replaceChild())

    创建新的 HTML 元素 (节点) - appendChild() 实例: <!DOCTYPE html> <html><head><meta charset ...

  9. jquery的DOM节点操作(创建和插入元素节点)

    1.创建元素节点 2.插入节点 动态创建新元素节点后,需要执行插入或追加操作,否则不会在页面显示出来. 按照元素的层次关系来分,可以分为内部和外部两种方法 元素内部插入子节点 元素内部插入子节点有两种 ...

最新文章

  1. ASP3.0给我们带来的新技术之一---DataShaping技术
  2. RxJava的初步认识
  3. pycharm切换虚拟环境
  4. python3抓取图片_通过Python3 爬虫抓取漫画图片
  5. FlashFXP列表参数错误解决方法
  6. 【收藏版】深度学习中的各种优化算法
  7. XML学习总结(一)——XML介绍
  8. html阿里矢量图标库,矢量图标素材库_阿里巴巴矢量图标库的使用
  9. Linux下线程经典问题(生产者消费者问题,哲学家问题...)
  10. 数独问题(java)
  11. jeecms oracle v5_如何在linux中搭建JEECMS系统
  12. 浙江大学 工程伦理 第十二单元测试答案
  13. 最终实现4象棋主程序的完善,主要还是针对之前的ChessMainframe类进行完善.
  14. sql 闩锁 原因_如何识别和解决SQL Server中的热闩锁
  15. cat: `/user/tmp/hello.txt': No such file or directory解决办法
  16. 【C++编程语言】之string容器 基本概念 构造函数 赋值 拼接 查找 替换比较 插入 删除 子串获取
  17. 各种肤质补水六大误区 - 生活至上,美容至尚!
  18. 米兰愈加关怀的是尼昂的伤情
  19. 区块链身份认证与存证固证平台设想
  20. 2021年全球麻醉深度监测仪收入大约523.7百万美元,预计2028年达到872.3百万美元

热门文章

  1. metaweblog php,[PHP]利用MetaWeblog API实现XMLRPC功能
  2. linux debian硬盘安装,硬盘安装linux debian如何配置grub文件
  3. 【干货】在Redis中设置了过期时间的Key怎么办?
  4. RocketMQ 千锤百炼--哈啰在分布式消息治理和微服务治理中的实践
  5. 课时 18-Kubernetes 调度和资源管理(子誉)
  6. Knative Serverless 之道:如何 0 运维、低成本实现应用托管?
  7. java mysql 占位符_在Java中编写带占位符的SQL语句
  8. linux python3 pip3_linux环境下安装python3以及pip3
  9. 超级计算机为什么快,演讲视频_为什么这台超级计算机如此快? (有声) _沪江英语...
  10. 为什么打印还要另存为_锦学考研 | 打印准考证的常犯错误