带有jQuery的DOM元素的非深度拷贝



是否可以在不克隆其内容的情况下在jQuery中创建DOM元素的克隆/副本?我需要将div 的内容拆分为两个具有相同属性的单独div。因此,例如我需要更改:

<div class="someclass" someattr="someval">
    this is the first sentence. this is the second sentence.
</div>

变成这样的东西:

<div class="someclass" someattr="someval">
    this is the first sentence.
</div>
<div class="someclass" someattr="someval">
    this is the second sentence.
</div>

内容的确切拆分方式相当复杂,但这基本上是我需要做的。 显然,可以使用以下命令创建没有内容的克隆:

$(el).clone().empty();

但是由于我的元素可能会变得相当大,我想摆脱不必要地克隆元素内容的开销。想法?谢谢!

只需绕过 jQuery 即可执行此操作,只要您不需要保留(非基于属性的)事件侦听器或其他数据。

var $clone = $(el.cloneNode(false));

最新更新