如何在jQuery中获取整个元素的副本?

时间:2010-10-29 15:46:42

标签: jquery-selectors

我想获取所选元素,然后在几个地方插入副本。

var template = $("#info-" + country + " > .stats > .template").clone();
$(template).insertBefore("#info-" + country + " > .stats > .template");

我错误的是它没有复制元素并插入它?

P.S。我选择复制的元素是display:none。

1 个答案:

答案 0 :(得分:1)

你有一个额外的包装,template已经是一个jQuery对象,你只需要:

var template = $("#info-" + country + " > .stats > .template").clone();
template.insertBefore("#info-" + country + " > .stats > .template");

或者更简单一点:

var template = $("#info-" + country + " > .stats > .template");
template.clone().insertBefore(template);

或者使用.before()函数,如下所示:

 $("#info-" + country + " > .stats > .template").before(function() { 
   return $(this).clone(); 
 });