jQuery:仅在没有类名时选择元素

Chr*_*rby 12 jquery jquery-selectors

如果元素没有任何类,我怎么能用jQuery来选择元素呢?

我正在编写一个页面,允许html作者通过向元素添加一个类来覆盖默认的jQuery操作.它应该是任何类.

所以标记可能是:

<ul>
  <li class="override"></li>
  <li></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

我希望jQuery只选择第二个列表元素,因为它没有类.

我看过.hasClass(),但它似乎需要一个特定的类名.

谢谢!

nnn*_*nnn 8

这应该这样做:

$('li:not([class]),li[class=""]')
Run Code Online (Sandbox Code Playgroud)

演示:http://jsfiddle.net/aMC5X/

第一部分li:not([class])使用"not selector""has attribute"来查找li根本没有该class属性的任何元素.

第二部分,li[class=""]查找li将属性设置为空字符串的任何元素.