我正在尝试通过':not()'过滤元素列表,而jQuery似乎忽略了我的过滤器。
这是代码:
myElements.filter(':not(.someclass)');
jquery仍会选择所有myElements ...
答案 0 :(得分:6)
myElements = myElements.filter(":not(.someClass)");
myElements.hide();
或:
myElements = myElements.not(".someClass");
myElements.hide();
实际上,您需要将已过滤的集合分配给变量以捕获已修改(已过滤)的集合,否则您实际上只是在其初始状态中引用myElements
。如果您不想这样做,您可以随时使用链接,例如:
myElements.filter(":not(.someClass)")
.hide();