jquery найти теги h2 и добавить в div - PullRequest
0 голосов
/ 11 мая 2010

Я пытаюсь написать немного jquery, который находит все теги h2 внутри div (.content), а затем добавляет каждый из них в другой div (.intro).

Пока у меня есть это:

var h2 = $(".content").find("h2");
$(h2).each(function() {
  $(this).append(".intro");
});

Но это не работает .. если бы кто-то мог мне помочь, это было бы здорово :) 1006 *

Ответы [ 3 ]

5 голосов
/ 11 мая 2010

Попробуйте это:

var h2 = $('h2', '.content');
$('.intro').append(h2);

Не нужно использовать each(). В jQuery есть нечто, называемое «неявная итерация», где вы можете действовать сразу на весь набор. Таким образом, вы можете захватить их все и добавить их все одновременно.

Или вы хотите добавить их копию?

Если это так, попробуйте:

var h2 = $('h2', '.content');
$('.intro').append(h2.clone());

EDIT:

Или используйте однострочную версию:

$('.intro').append($('h2', '.content').clone());​

(конечно, удалите .clone(), если вам не нужно их копировать.)

2 голосов
/ 11 мая 2010

Можно использовать children (), что-то вроде ...

$('.content').children('h2').each(function() {
    $(this).appendTo($('.intro'));
});
2 голосов
/ 11 мая 2010

Я думаю, вы ищете метод appendTo .

var h2 = $(".content").find("h2");
$(h2).each(function() {
    $(this).clone().appendTo($(".intro"));
});

Редактировать: только что заметил, что appendTo перемещал теги h2, поэтому, если это нежелательно, добавил вызов к clone().

...