jQuery 将一个 div id 中的 <ul> 克隆到另一个 div

Posted

技术标签:

【中文标题】jQuery 将一个 div id 中的 <ul> 克隆到另一个 div【英文标题】:jQuery clone the <ul> within a div id to another div 【发布时间】:2011-12-23 00:09:31 【问题描述】:

我正在使用以下 jquery 将 div (keywfeatures) 的内容克隆到页面上的另一个 div (keyfeaturestop) 中。我希望能够从第一个 div (#keyfeatuers) 中获取 ul 标签,然后克隆并将其添加到 keyfeaturestop div。

$("#keyfeatures").clone().prependTo("#keyfeaturestop");

在 jQuery 示例页面中,他们将粗体元素克隆到段落中,请参见此处 http://api.jquery.com/clone/ 我不擅长使用 jquery 选择器,但认为它有一些功能可以做到这一点

谢谢

【问题讨论】:

【参考方案1】:

试试这个:

$("#keyfeatures ul").clone().appendTo("#keyfeaturestop");

http://jsfiddle.net/eZMFs/1/

【讨论】:

【参考方案2】:

不看你的 html 就很难提供最好的解决方案,但你应该可以findul

$("#keyfeatures").find("ul").clone().prependTo("#keyfeaturestop");

但是,如果#keyfeatures 中有多个ul 元素,这可能无法按预期工作。如果是这种情况,您需要提供更多信息(例如您需要克隆哪一个)。

要选择第一个ul,您有多种选择(事实上,不止这三个!):

$("#keyfeatures ul:first").clone().prependTo("#keyfeaturestop");
$("#keyfeatures ul").eq(0).clone().prependTo("#keyfeaturestop");
$("#keyfeatures ul").first().clone().prependTo("#keyfeaturestop");

另外,你在问题中说:

我正在使用以下 jquery 来克隆 div 的内容

请注意,您不是在克隆div内容,而是在克隆div 本身。在您的示例中,#keyfeaturestop 将包含一个子 div,它是 #keyfeatures 的克隆。

【讨论】:

谢谢,我意识到 div 中可能有多个 ul,这可能会导致问题,现在只有一个。但是使用 .find() 函数是否有一种方法可以选择找到的 ul 的第一个实例?

以上是关于jQuery 将一个 div id 中的 <ul> 克隆到另一个 div的主要内容,如果未能解决你的问题,请参考以下文章

JQuery按ID隐藏Div中的标签

如何在jquery中找到一个div中的img属性

jquery中的$的特殊用法

怎么用jquery 获取同级div 上一个div的id 跟下一个div的id

jquery 动态添加div同时给div增加了一个id,然后想通过这个id把这个div删掉,请问需要怎么弄?

怎么用JQuery读取<div>里面的IMG标签的属性