在div中添加div

时间:2012-08-31 15:23:43

标签: jquery html

我已经生成了这样的HTML:

<div class="row">
   <div class="item google"></div>
   <div class="item mail"></div>
   <div class="item apps"></div>
   <div class="item plus"></div>
</div>
<div class="row">
   <div class="item google"></div>
   <div class="item mail"></div>
   <div class="item apps"></div>
   <div class="item plus"></div>
</div>

我希望将其他内容放入谷歌

<div class="row">
   <div class="item google">
     <div class="group">
       <div class="item mail"></div>
       <div class="item apps"></div>
       <div class="item plus"></div>
     </div>
  </div>
</div>
<div class="row">
  <div class="item google">
     <div class="group">
       <div class="item mail"></div>
       <div class="item apps"></div>
       <div class="item plus"></div>
     </div>
  </div>
</div>

我正在创建组div:

jQuery("div.google").append('<div class="group"></div>');

但是当我这样做的时候。我支持添加

的所有内容
    jQuery("div.row > div.google > div.group").append(jQuery("div.mail"));

我有两个带有课程邮件的div。如何只定位父母。修改:http://jsfiddle.net/H6MYh/1/

4 个答案:

答案 0 :(得分:2)

尝试以下代码:

jQuery("div.google").append('<div class="group"></div>');
jQuery("div.google").each(function(){
    var $this = jQuery(this);
    $this.siblings().appendTo($this.find('.group'));
});

编辑: 特定div :(未经测试)

jQuery("div.google").each(function(){
    var $this = jQuery(this);
    $this.next('.mail').appendTo($this.find('.group'));
});

答案 1 :(得分:1)

您可以使用wrapAll

$('div.row').each(function(){
     $('div:not(:first)', this).wrapAll('<div class="group"></div>')
})

FIDDLE

答案 2 :(得分:0)

jQuery("div.google")

获取所有div类“google”。要仅选择第一次出现,请为其添加[0]。

jQuery("div.google")[0].append('<div class="group"></div>');
jQuery("div.row > div.google > div.group").append(jQuery("div.mail"));

答案 3 :(得分:0)

你可以使用$(“。row”)。每个(...)依次处理每一行,然后在结果对象上使用.find(...)来仅针对他们的孩子...