1

我已经为此工作了一秒钟,但答案却在我想不到。我相信这很简单,但它不会到来。

本质上,我试图遍历一个由列表元素组成的 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");
    }
}

如您所见,我正在寻找一个ul内部li元素并在它存在时对其进行操作。

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

如何将 jQuery 包裹在我循环的元素周围?有什么想法吗?

4

2 回答 2

3
$('li.class:has(ul)').each(function(){ 
   // do someting
});
于 2013-06-26T22:58:39.350 回答
1

不要离开 jQuery 选择,只需使用以下内容进行过滤has

$(obj.mainNavItems).has("ul").each(function(index, element) {
    console.log("element " + index + " =" + element);
}
于 2013-06-26T22:59:56.033 回答