jquery not() and has() combined



我尝试这样的事情:

$(".off-canvas-list li").not(has("ul")).addClass("liChildless");

这是不起作用的,我该如何编写此代码以在没有孩子UL的所有LI标签中添加一类" Lichild"?

$(".off-canvas-list li:not(:has('ul'))").addClass("liChildless");

小提琴

您可以使用filter()

$(".off-canvas-list li").filter(function () {
    return $(this).find("ul").length === 0;
}).addClass("liChildless");

小提琴。

OTOH,我刚刚测试过,您也可以将:not():has()选择器组合在一起:

$(".off-canvas-list li:not(:has(ul))").addClass("liChildless");

在这里检查小提琴。

相关内容

最新更新