复制节点和替换节点

本文介绍了如何在DOM中复制和替换节点。利用`clone()`方法可以复制节点,`clone(true)`能同时复制元素及事件。需要注意的是,复制后的节点ID必须唯一,否则会导致错误。另外,`replaceWith()`和`replaceAll()`用于替换节点,原节点上的事件在替换后会消失。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

                                 复制节点和替换节点
 -----------------------------------------------------------------------------------
      开发工具与关键技术:VS.JQuery作者:纳兹,撰写日期:2019.07.08,源于:老师教程
 -----------------------------------------------------------------------------------

复制节点:clone():克隆匹配的DOM元素,返回值为克隆后的副本,但此时复制的新节点不具有任何行为。clone(true):复制元素的同时也复制元素中的事件。例如:下图。
复制热血(#get)节点,并添加到蔬菜(#poto)的节点的后面(KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲get").clone().i…("#poto"))), 当点击复制的节点它也会弹出显示,原来的(被复制的节点)点击也会有反应,在浏览器检查代码,代码下面多了一条被复制的节点,这个节点代码和被复制的节点代码一样,所以需要重置一下( KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲get").clone(tru…("#poto"));),使用attr重置代码,复制前我们首先是克隆,所以.clone()得在.attr前面,克隆之后.clone()不具任何行为,如果需要具有行为需要在.clone()里面加true,在克隆的同时克隆节点所具备的事件。复制clone节点时需要注意原节点的属性id,因为在同一个1文档id不能相同,所以原节点和克隆的节点不能出现相同的节点id,否则就是错误的节点。复制.clone(true):在复制节点的同时也要复制节点包含的事件。
替换节点(replaceWidth():将所有匹配的元素都替换为指定的HTML或DOM元素;replaceAll():颠倒了的replace()方法;如果在替换之前,已经在元素上绑定了事件。替换后原先绑定的事件会与原先的元素一起消失。
创建一个节点

  • 艾斯
  • ,替换id(#food)的第一个节点 ( &quot; &lt; l i &gt; 艾 斯 &lt; / l i &gt; &quot; ) . r e p l a c e A l l ( (&quot;&lt;li&gt;艾斯&lt;/li&gt;&quot;).replaceAll( ("<li></li>").replaceAll(("#city li:first"));创建一个节点
  • 艾斯
  • ,替换#Catton的第二个li子节点( KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲city li:eq(1").…(“
  • 艾斯
  • ”)));互换两个节点:#get和#poto( KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲poto").replaceW…("#get"))),这里不仅替换了还移动了。如果需要更换可以使用复制节点的方法(var $poto2 = $("#get").clone(true), var $get = KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲get").replaceWi…poto2),alert(2), KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲poto").replaceW…("#get"))。节点互换前需要复制节点。
    以上为节点的复制和替换。 在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值