我在页面上有几个对象,我想只在其中一些上使用jQuery执行操作 - 那些没有指定属性的操作。所以:
<li style='...'>some text</li>
<li style='...'>some other text</li>
<li>some very diffrent text</li>
在javascript中我会:
$('li[style]').hide();
会隐藏具有style
属性的所有元素。但是如果我想隐藏那些而没有它,我的选择器应该怎么样?
答案 0 :(得分:74)
jQuery("li:not([style])").hide();
答案 1 :(得分:5)
您可以使用:not psuedo-selector来查找不匹配某个选择器的元素。在您的示例中,您要选择没有style属性的所有li元素,因此您将使用以下内容:
$('li:not([style])').hide();
您也可以将其与其他选择器结合使用:
$('#div input:not(:checked)').show();
这是一个非常强大的工具!
答案 2 :(得分:1)
尝试:
$('li:not([style])').hide();
答案 3 :(得分:0)