javascript - 克隆元素的子元素和文本

标签 javascript jquery html dom

最好的是,我遇到了以下情况,我需要克隆一个元素的内容及其附加的所有事件,这仅适用于我无法用它克隆文本,如fiddle所示:

HTML:

<div class="source">Say bye bye, little text!
    <span class="stay">I'm gonna clone!</span>
More text
</div>

<div class="destination">

</div>

<button>Clone!</button>

JS:

$('button').click(function(){
    $('.source').children().clone(true,true).appendTo($('.destination'));
});

我怎样才能让它发挥作用?在不克隆目标中的父容器或更改 html 输入的情况下,文本也会被克隆吗?

最佳答案

$('.source').clone(true,true).appendTo($('.destination'));

您当前仅克隆一个子节点,即 <span>

upd:或者您可以将一个对象的 html 附加到另一个对象:

$('.destination').append($('.source').html());

upd2:由于您克隆的是用户输入,并且您有某种包含整个输入的字符串,因此您将其附加到 .source 中,如下所示:

$(".source").append('<span id="some_id">' + user_input + '</span>');

并克隆它:

$(".source").find("#some_id").clone(true,true).appendTo($('.destination'));

关于javascript - 克隆元素的子元素和文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15430754/

相关文章:

javascript - React router v4错误链接组件

JavaScript 返回错误值

javascript - 在使用 .replace() 之后,字符串无法选择元素(使用 jquery)

html - CSS 全宽网格 - 具有均匀边距的列

css - 使用 div 作为填充物

html - Bootstrap 4 Navbar 在导航时与容器重叠

javascript - 如何将变量从服务器js文件传递到另一个文件

javascript - 满足条件后双重 Action

javascript - 如何在 Javascript 中深度克隆 XMLDocument 对象?

jquery - 导出到 Word of Confluence 内容会丢失 CSS 样式