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. Openstack Nova 源码分析 — RPC 远程调用过程

    目录 目录 Nova Project Services Project 的程序入口 setuppy Nova中RPC远程过程调用 nova-compute RPC API的实现 novacompute ...

  2. Beaglebone Black的引脚分配

    转自:http://blog.csdn.net/daxueba/article/details/50998000 Beaglebone Black的引脚分配 绝大多数的微型开发平台都提供了一些称为GP ...

  3. PAT_A1090#Highest Price in Supply Chain

    Source: PAT A1090 Highest Price in Supply Chain (25 分) Description: A supply chain is a network of r ...

  4. 过滤'and','or' ''' '*' '=' ‘select’下的注入

    遇到一个站:http://www.马赛克.net/intro.aspx?id=6 加了单引号  http://www.马赛克.net/intro.aspx?id=6‘  页面无变化 加了双引号   h ...

  5. day5:函数练习题

    1.写函数,检查获取传入列表或者元祖的对象的所有奇数位索引的元素,并将作为新的列表返回给调用者 #解1: def lis(x): lis_1 = [] for i in range(len(x)): ...

  6. Myeclipse配置tomcat和jdk

    1.打开Myeclipse,Windows--preference--出现如下窗口.Browse为导入解压的tomcat路径. 2.配置jdk.使用哪个tomcat,就配置哪个tomcat下的jdk, ...

  7. json对象数组的创建、遍历、添加、删除、修改、js的splice()用法

    本文链接:https://blog.csdn.net/houfengfei668/article/details/79843625 )第二种方式:手动构造json对象数组 )for )用splice方 ...

  8. mysql查询小技巧

    如果所传bookTypeName为空则执行select * from t_bookType(搜索框里未输入信息) 否则追加 and bookTypeName like  '%"+bookTy ...

  9. 2018-12-25-C#-7.2-通过-in-和-readonly-struct-减少方法值复制提高性能

    title author date CreateTime categories C# 7.2 通过 in 和 readonly struct 减少方法值复制提高性能 lindexi 2018-12-2 ...

  10. C 常见字符串操作函数

    头文件 <string.h> 1. char *strstr(const char *str1, const char *str2);      判断str2是否为str1的子串  //s ...