Цикл через детей - PullRequest
       2

Цикл через детей

4 голосов
/ 03 июля 2010

По сути, есть ли способ циклически проходить через дочерние элементы.

т.е:.

<ul>
<li>some text</li>
<li>some more text</li>
<li>even more text</li>
</ul>

Я хочу получить текст из первого <li>, выполнить несколько операций, затем перейти к следующему и следующему, пока я не рассмотрю все дочерние элементы.

Возможно ли это?

1 Ответ

6 голосов
/ 03 июля 2010

Ваш вопрос может использовать немного больше объяснений, но я думаю, что jQuery .each () - это то, что вы ищете. Не путайте с jQuery.each, который вы можете использовать для перебора любой коллекции, .each перебирает все элементы внутри объекта jQuery, созданные из вашего выражения селектора. Он выполняет функцию обратного вызова для каждого элемента, который является частью объекта jQuery. В функцию обратного вызова передается индекс элемента и сам элемент. Важно отметить, что обратный вызов запускается в контексте текущего элемента DOM, поэтому this относится к элементу и не является объектом jQuery. Таким образом, вы можете сделать что-то вроде:

$("selectorForListElem").children().each(function(index, currentElem) {
    // processing for current child element
});

Я создал очень простой пример над jsFiddle .

...