检查所有项目是否具有相同的类别

Joh*_*ohn 14 each jquery

我构建了一个FAQ页面,其中包含隐藏和显示每个问题下方内容的选项.我有一个"全部展开"功能,让用户可以显示所有问题.当问题被扩展时,它会得到一个"被选中"的类.

我想在扩展所有问题(LI)时更改"全部展开"状态.

如何检查所有LI是否同时"选择"了CLASS?

我使用EACH方法来获取LI及其CLASS.

提前致谢

Xio*_*ion 31

您可以使用selected类对所有列表项计数列表项:

if ($("#questions li.selected").length == $("#questions li").length) {
    // all list items are selected
}
Run Code Online (Sandbox Code Playgroud)

#questions 是包含列表的元素,当然它可能在您的代码中有所不同,但您应该明白这一点.


ipr*_*101 10

$("li:not(.selected)").length
Run Code Online (Sandbox Code Playgroud)

会给你<li>没有'选定'类的s 的数量.如果这个数字是零,你可以运行你的逻辑.


Den*_*nis 9

选择所有列表项,过滤掉属于某个类的项,然后确定是否还有剩余项:

if($("li").not(".className").length > 0 ) {
    //code
}
Run Code Online (Sandbox Code Playgroud)