Javascript 在jQuery集合中循环并使用jQuery包装

Javascript 在jQuery集合中循环并使用jQuery包装,javascript,jquery,Javascript,Jquery,我已经在这方面工作了一秒钟,但答案却在我的脑海中闪过。我相信这很简单,但不会发生 从本质上讲,我试图循环通过一个由列表元素组成的jQuery集合,然后在for循环中再次将jQuery包装在它周围。以下是我目前的代码: for (i = 0; i < $(obj.mainNavItems).length; i += 1) { if ($(obj.mainNavItems)[i].has("ul")) { //wrap specific item with jQuery

我已经在这方面工作了一秒钟,但答案却在我的脑海中闪过。我相信这很简单,但不会发生

从本质上讲,我试图循环通过一个由列表元素组成的jQuery集合,然后在for循环中再次将jQuery包装在它周围。以下是我目前的代码:

for (i = 0; i < $(obj.mainNavItems).length; i += 1) {
    if ($(obj.mainNavItems)[i].has("ul")) { //wrap specific item with jQuery
        console.log("true");
    }
}
正如你所看到的,我正在寻找li元素中的ul,并在它存在的情况下对其进行操作

我熟悉$.map方法,但我不确定它是否适用于这种情况。我没有运气用它


如何将jQuery封装在循环使用的元素周围??有什么想法吗?

不要离开jQuery选项,只需使用has进行过滤:

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

不要离开jQuery选择,只需使用has筛选它:


我对这个循环感到困惑,你想通过li循环,每个都做什么?给我正在循环访问jQuery方法的项目。我对这个循环感到困惑,你想通过li循环,每个都做什么?给我正在循环访问jQuery方法的项目。是的,很有魅力。毫无疑问,我想得太多了。我会给你打勾的。很高兴我能帮上忙-快乐编码:是的,工作得很有魅力。毫无疑问,我想得太多了。我会给你打勾。很高兴我能帮上忙-快乐编码:给你一个+1,但我相信底部的@nifr更简单,可读性更强。@SethenMaleno nifr在答案上比我强,但我试着让我的答案变得足够不同,以便相关-展示了如何将其附加到现有查询中,以及使用每个函数的更多信息。谢谢你的+1!:-谢谢你的帮助!:DGave a+1,但我相信底部的@nifr更简单,可读性更强。@SethenMaleno nifr在答案上击败了我,但我试图使我的答案变得足够不同,以与之相关-展示如何将其附加到现有查询中,以及使用每个函数的更多信息。谢谢你的+1!:-谢谢你的帮助!:D
$(obj.mainNavItems).has("ul").each(function(index, element) {
    console.log("element " + index + " =" + element);
}