Перебор данных на Jquery

Рейтинг: 0Ответов: 1Опубликовано: 26.11.2014

Добрый день.

Подскажите, пожалуйста, как сделать правильно перебор данных на Jquery?

Есть 20 section, внутри которых стоит h2. Плавающим блоком выводится список со ссылками на каждый section. Пытаюсь брать все h2 и вставлять в список, получается, что вставляет в каждый <li> все найденные h2.

Пишу вот так:

$(function() {
        $('section h2').each(function() {
            $('#fp-nav li a span').append($('<i/>', {text: $(this).text()}));
        });

Обновление

Мдя, из-за каши в голове фигово формулирую. Есть

<section><h2>Текст 1</h2></section>
<section><h2>Текст 2</h2></section>
<section><h2>Текст 3</h2></section>
<section><h2>Текст 4</h2></section>

Нужно получить

<ul class="list">
<li><a href="#"><span>Текст 1</span></a></li>
<li><a href="#"><span>Текст 2</span></a></li>
<li><a href="#"><span>Текст 3</span></a></li>
<li><a href="#"><span>Текст 4</span></a></li>
</ul>

Но у меня получается

<li><a href="#"><span>Текст 1 Текст 2 Текст 3 Текст 4</span></a></li>

Ответы

▲ 1Принят

Попробуйте написать вот так, у функции each() есть возможность определять номер текущего элемента:

   $(function() {
        $('section h2').each(function(index) {
            $('#fp-nav li:eq('+ index + ') a span').append($('<i/>', {text: $(this).text()}));
        });
    });

UPD. Вот пример