if ($("#logo-buttons-bg ul li").has("ul")){
$(this).addClass("hide-sub-menu");
}
如何将隐藏子菜单类添加到每个内部有ul元素的#logo-buttons-bg ul li ?
if ($("#logo-buttons-bg ul li").has("ul")){
$(this).addClass("hide-sub-menu");
}
如何将隐藏子菜单类添加到每个内部有ul元素的#logo-buttons-bg ul li ?
这应该很好:
$("#logo-buttons-bg ul li").has("ul").addClass("hide-sub-menu");
使用:has()
选择器。
$("#logo-buttons-bg > ul > li:has(ul)").addClass("hide-sub-menu");
另一种方法:
$('ul').filter(function(){
return $(this).closest('#logo-buttons-bg ul li').length;
}).addClass('hide-sub-menu');
参考:
:has
选择至少包含一个与指定选择器匹配的元素的元素。
尝试:
$("#logo-buttons-bg > ul > li:has(ul)").addClass("hide-sub-menu");
使用parent>child
它选择所有元素与parent child
仅选择第一个元素相比,所以现在你的目标是所有li
具有父元素#lofo-buttons-bg
。
:has(ul)
将检查这些 li 是否ul
包含子标签,如果为 true,则添加该类。