通过jQuery选择没有隐藏单词的类

时间:2018-03-22 09:20:15

标签: jquery

我有一个类"check-cls agent-cls corporate-cls log-out-cls hidden"存在的页面。当我在jQuery命令下运行时,它返回结果:

Jquery的:

$(".check-cls.agent-cls.corporate-cls.log-out-cls");
  

结果:0:li.check-cls.agent-cls.corporate-cls.log-out-cls.hidden

为什么还要上隐藏班?我想对包含.check-cls.agent-cls.corporate-cls.log-out-cls类的元素执行操作,但也会在li.check-cls.agent-cls.corporate-cls.log-out-cls.hidden上应用操作。

3 个答案:

答案 0 :(得分:2)

当您使用多类选择器时,它将针对具有类"check-cls agent-cls corporate-cls log-out-cls hidden"的元素的两个类的元素满足要求。

使用:not() selector,您可以排除.hidden

的元素
$(".check-cls.agent-cls.corporate-cls.log-out-cls:not(.hidden)");

答案 1 :(得分:0)

尝试:可见

$(".check-cls.agent-cls.corporate-cls.log-out-cls:visible");

答案 2 :(得分:0)

这是因为jquery选择器将类与所有元素进行匹配。现在,由于具有隐藏类的元素也具有这些类,因此它被选中。

要选择具有您定义的所有类名并且没有隐藏类的元素,

$(".check-cls.agent-cls.corporate-cls.log-out-cls").not('.hidden');

$(".check-cls.agent-cls.corporate-cls.log-out-cls:not(.hidden)")