2013-06-26 4 views
1

Я работаю над этим на секунду, и ответ ускользает от меня. Я уверен, что это просто, но это не придет.Looping через сбор jQuery и обертывание с помощью jQuery

По существу, я пытаюсь выполнить цикл в коллекции jQuery, который состоит из элементов списка, а затем снова обернуть вокруг него цикл jQuery в цикле for. Вот мой код до сих пор:

for (i = 0; i < $(obj.mainNavItems).length; i += 1) { 
    if ($(obj.mainNavItems)[i].has("ul")) { //wrap specific item with jQuery 
     console.log("true"); 
    } 
} 

Как вы можете видеть, я ищу с ul внутри li элементов и действующих на него, если он существует.

Я знаком с методом $.map, но я не уверен, применим ли он в этом случае или нет. Мне не удавалось это использовать.

Как я могу обернуть jQuery вокруг элементов, через которые я петлю? Есть предположения?

+0

Я запутался в этом «обтекать», вы хотите, чтобы цикл через 'li' и делать то, что с каждый? – tymeJV

+0

Предоставление элемента Я получаю доступ к методам jQuery. – Sethen

ответ

3
$('li.class:has(ul)').each(function(){ 
    // do someting 
}); 
+0

Yup, работал как шарм. Без сомнения, я уже думал об этом. Дает вам галочку. – Sethen

+1

рад, что я мог бы помочь - счастливое кодирование :) – nifr

1

Не оставляйте выбор JQuery, просто фильтровать с has:

$(obj.mainNavItems).has("ul").each(function(index, element) { 
    console.log("element " + index + " =" + element); 
} 
+0

Дал вам +1, но я считаю, что @nifr внизу проще и читабельнее. – Sethen

+0

@SethenMaleno нифр избил меня до ответа, но я попытался сделать мой разным достаточно, чтобы быть релевантным - показывая, как добавить его к существующему запросу и получить дополнительную информацию об использовании функции 'each'. Спасибо за +1! :-) –

+0

Спасибо за помощь! : D – Sethen