var newDiv = red.cloneNode();
document.body.appendChild(newDiv);
注意:
1、默认只克隆元素本身;设置参数为true,进行深度克隆,可以克隆元素的子元素等所有元素
2、元素绑定的事件并不会随着元素的克隆而被携带

===========================相关示例代码如下================================

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>DOM节点克隆</title>

<style>

*{

margin: 0;

padding: 0;

}

.red{

width: 200px;

height: 200px;

background: pink;

border-radius: 50%;

margin-top: 20px;

margin-left: 20px;

}

.green{

width: 100px;

height: 100px;

background: green;

border-radius: 50%;

margin:0 auto;

}

#clon1,#clon2{

margin-left: 50px;

margin-top: 30px;

width: 120px;

height: 30px;

}

</style>

</head>

<body>

<div class="red">

<div class="green"></div>

</div>

<button id="clon1">克隆节点本身</button>

<button id="clon2">克隆全部</button>

<script>

var red = document.querySelector('.red');

var clon1 = document.getElementById('clon1');

var clon2 = document.getElementById('clon2');

//注意:克隆的元素没有携带原有元素绑定的事件

red.onclick = function(){

this.style.background = 'black';

}

//单击按钮,克隆节点

clon1.onclick = function(){

//克隆节点,并追加到body中

var newDiv1 = red.cloneNode();  //这样只能克隆元素本身;添加参数true,可以全部克隆

document.body.appendChild(newDiv1);

}

//深度克隆

clon2.onclick = function(){

var newDiv2 = red.cloneNode(true);

document.body.appendChild(newDiv2);

}

</script>

</body>

</html>

DOM节点克隆的更多相关文章

  1. DOM 节点的克隆与删除

    无奈的开头 关于DOM节点操作,如果仅仅是根据标准API来操作,那是最简单不过的了.但是现实中却哪有这么容易的问题让我们解决,其实不仅仅是节点的克隆与删除,节点的添加也是如此,而且添加节点需要考虑的情 ...

  2. JS学习之DOM节点的关系属性封装、克隆节点、Dom中Style常用的一些属性等小结

    JS DOM节点: 在JS DOM中节点的关系被定义为节点的属性: 通常有以下几种节点之间的关系: (这里的关系是所有浏览器都支持的) parentNode    父节点 childNodes     ...

  3. jQuery克隆DOM节点

    jQuery克隆DOM节点 <%@ page language="java" import="java.util.*" pageEncoding=&quo ...

  4. 深入理解DOM节点操作

    × 目录 [1]创建节点 [2]插入节点 [3]移除节点[4]替换节点[5]复制节点 前面的话 一般地,提起操作会想到“增删改查”这四个字,而DOM节点操作也类似地对应于此,接下来将详细介绍DOM的节 ...

  5. jQuery学习-css、class操作、动画方法的运用、jQ操作Dom节点

    css操作(设置单个/多个样式.获取样式) //修改单个属性:括号之中直接是需要修改的样式名,值 css(name,value) //例:$("#one").css("b ...

  6. JS 操作Dom节点之CURD

    许多优秀的Javascript库,已经封装好了丰富的Dom操作函数,这可以加快项目开发效率.但是对于非常注重网页性能的项目来说,使用Dom的原生操作方法还是必要的. 1. 查找节点 document. ...

  7. 原生JS的DOM节点操作

    DOM(Document Object Model/文档对象模型)是针对HTML和XML文档的一个API.DOM节点树:在文档中出现的空格.回车.标签.注释.文本.doctype.标签等都属于DOM节 ...

  8. JavaScript函数使用和DOM节点

    一.函数的声明与调用 1.函数声明的格式: function 函数名(参数1, 参数2,....){ 函数体代码 return 返回值:} 2.函数的调用:①直接调用:函数名(参数1的值,参数2的值, ...

  9. jacascript DOM节点——节点关系与操作

    前言:这是笔者学习之后自己的理解与整理.如果有错误或者疑问的地方,请大家指正,我会持续更新! 节点关系 DOM可以将任何HTML描绘成一个由多层节点构成的结构.每个节点都拥有各自的特点.数据和方法,也 ...

随机推荐

  1. NX二次开发-遍历当前part所有component,把装配子部件设置成工作部件

    NX11+VS2013 #include <uf.h> #include <uf_disp.h> #include <uf_modl.h> #include < ...

  2. shell设置时间递减脚本

    经常要用shell来做时间的定时任务,尤其是用sqoop脚本拉取数据的时候,那么假如当你要导入数据是残缺的时候呢,我写了一个能自定义时间并逐条递减的程序 #!/bin/bash   . /etc/pr ...

  3. STM32F427VI 电流

  4. mysql8以上版本时区问题:The server time zone value乱码XXXX

    异常类似: The server time zone value '�й���׼ʱ��' is unrecognized or represents more than one time zone. ...

  5. 14-Ubuntu-文件和目录命令-查看目录内容-ls-1

    1.终端使用技巧 (1)tab键自动补全 (2)按上/下光标键查看使用过的命令 (3)退出当前命令,Ctrl C (4)缩小--Ctrl - ;放大--Ctrl shift + 2.ls 命令--查看 ...

  6. Spring MVC @RequestParam(5)

    案例来说明 1 @RequestMapping("user/add") 2 public String add(@RequestParam("name") St ...

  7. Spring核心接口之InitializingBean

    一.InitializingBean接口说明 InitializingBean接口为bean提供了属性初始化后的处理方法,它只包括afterPropertiesSet方法,凡是继承该接口的类,在bea ...

  8. 5步减小你的CSS样式表

    第一步:学会如何组合选择器 什么是选择器?如果你还不知道什么叫做”选择器”,你可以先参考一下w3schools.com的CSS语法概述. 未优化的CSS代码在下面的图例中,你会看到来自三个不同选择器的 ...

  9. PyQt5 安装及简单实例 -- 标签设置

    - 1 -    PyQt5安装,鉴于pip工具,安装其实很简单, 如下:(最好将pip索引配置成国内镜像,速度比默认的快得多) pip3 isntall PyQt5 - 2 -    利用Pycha ...

  10. The linux command 之存储媒介

    一.常用的命令 mount:挂载文件系统 unmount:卸载文件系统 fdisk:硬盘分区命令 fdformat:格式化软盘 fsck:检查和修复文件系统 mkfs:创建文件系统 dd:转换和拷贝一 ...