复制div点击此div中的元素

时间:2013-09-17 21:24:02

标签: javascript jquery

我在点击.step div时尝试复制.delete div。复制的div应显示在单击.delete div

的步骤下方
      <div class="step" >
          <h2> sth </h2>

          <div class="copy"></div>
          <div class="delete"></div>
      </div>

      <div class="step" >
          <h2> sth </h2>

          <div class="copy"></div>
          <div class="delete"></div>
      </div>

      <div class="step" >
          <h2> sth </h2>

          <div class="copy"></div>
          <div class="delete"></div>
      </div>

这是我错误的jQuery:

  $('.copy').click(function(){
   var newDiv = $(this).parent().innerHTML;
   $(this).parent().after(newDiv);
 });     

2 个答案:

答案 0 :(得分:4)

它将是jQuery .html()而不是DOM innerHTML,因为parent()返回一个jQuery包装器。

但是没有必要乱用HTML源代码;使用clone()

$(this).parent().after($(this).parent().clone());

(另外clone(true)如果要复制现有的事件处理程序,即新副本上的click()也会复制该副本。)

答案 1 :(得分:1)

$('.copy').click(function(){
   $(this).parent().after($(this).parent().html());
});

看看它是否适合你。