jQuery获取所有没有class属性的div
得到所有具有class属性的div
$('div[class]') 得到所有没有class属性的div
 $('div[class!=""]') 
这段代码的工作原理,但我不明白为什么它的作品。 如果上面的代码工作,那么所有具有class属性的div的代码应该是
 $('div[class=""]') 
这不会产生任何结果。
 尝试使用:not()伪类select器 : 
 $('div:not([class])') 
编辑
jQueryselect器的描述说:
-  [attribute]
 匹配具有指定属性的元素。
-  [attribute=value]
 将具有指定属性的元素与特定值进行匹配。
-  [attribute!=value]
 匹配不具有指定属性的元素,或者具有指定属性但不具有特定值的元素。
 这意味着div[class=""]将select具有用空值指定的class属性的所有DIV元素。 
 但最后一个select器是jQuery的专有select器,而不是CSSselect器 。 您将需要使用:not()来select所有没有类的DIV元素: 
 div:not([class]) 
重要的是要认识到, 有空类属性以及没有类属性的元素,但他们需要不同的testing来select。
有很多testing都做不同的事情。 这是我们testing的HTML代码:
 <div class="">Empty Class Attribute </div> <div class="column">Full Class Attribute </div> <div>No Class Attribute </div> 
现在,让我们运行我们的testing(第一部分只是一个string,可以帮助我们知道刚才在alert中调用了什么,否则就没有意义) :
 $(document).ready(function(e){ // Outputs "Empty Class Attribute Full Class Attribute" alert( "div[class] : " + $('div[class]').text() ); // Outputs "Full Class Attribute" alert( "div[class!=''] : " + $('div[class!=""]').text() ); // Outputs "Empty Class Attribute" alert( "div[class=''] : " + $('div[class=""]').text() ); // Outputs "No class Attribute" alert( "div:not([class]) : " + $('div:not([class])').text() ); }); 
您可以在浏览器中查看此代码: http : //jsbin.com/ijupu
 现在,掌握了这些知识,如果您想要select页面上的每个div元素都带有空白属性和无属性,请使用以下select器: 
 $("div[class=''], div:not([class])"); 
  $('div[class=""]')select器基本上读取: “获取所有div元素的类属性都有一个空string作为它的值。  – 排除除了空string之外的所有在类属性中具有ANY值的div元素,以及根本没有设置class属性的所有div元素。 
尝试
 jQuery('div[class^=""]') 
要么
 $('div[class^=""]') 
这意味着得到所有的任何名称类的div