添加类jQuery

时间:2013-07-18 18:03:41

标签: javascript jquery jquery-selectors addclass dom-manipulation

if ($("#logo-buttons-bg ul li").has("ul")){
    $(this).addClass("hide-sub-menu");
}

如何将隐藏子菜单类添加到内容 ul 元素的每个#logo-buttons-bg ul li ?< / p>

4 个答案:

答案 0 :(得分:4)

这应该是好的:

$("#logo-buttons-bg ul li").has("ul").addClass("hide-sub-menu");

答案 1 :(得分:4)

使用 :has() 选择器。

$("#logo-buttons-bg > ul > li:has(ul)").addClass("hide-sub-menu");

答案 2 :(得分:1)

另一种方法:

$('ul').filter(function(){
    return $(this).closest('#logo-buttons-bg ul li').length;
}).addClass('hide-sub-menu');

参考文献:

答案 3 :(得分:0)

:has选择包含至少一个与指定选择器匹配的元素的元素。

尝试:

$("#logo-buttons-bg > ul > li:has(ul)").addClass("hide-sub-menu");

使用parent>child,因为它选择所有元素作为与只选择第一个元素的parent child进行比较,所以现在我将所有li定位为父#lofo-buttons-bg。< / p>

:has(ul)将检查这些li是否将ul标记为子项,如果为真,那么它将添加该类。