JavaScript-如何克隆元素

  • 被克隆元素.cloneNode(布尔类型) 包含行内属性,原生js是不包含事件,jq是包含事件的。
    • 默认是false,false代表浅克隆,浅克隆不会包含内容
    • 传入true,代表深克隆,深克隆会包含内容
 <div class="aaa" style="width: 100px;height: 100px;background-color: black;margin-bottom: 5px;" >
	<span style="color: white;">hello world</span>
</div>
<script>
	let box = document.querySelector('.aaa')
// 这种添加事件的方式是不会被克隆的,无论深浅克隆
// 如果标签行内写了οnclick="fn()"才会 特别注意的地方
    box.onclick = function (){
       console.log('hello world')
    }  
    let cloneBox = box.cloneNode()
    let deepCloneBox = box.cloneNode(true) 
    document.body.appendChild(cloneBox)
    document.body.appendChild(deepCloneBox)

    console.log(cloneBox,"----浅克隆")
    console.log(deepCloneBox,"----深克隆")
</script>
  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值