选择没有任何类的元素[重复]

这个问题在这里已经有答案了
jQuery获取所有没有class属性的div

(4个答案)

七年前关闭的

我需要通过jQuery选择器查找页面中没有类的所有跨距

例如:

<span class='Cool'>不要找到我&lt/span>
<span>我,我,请带我走&lt/span>

使用:not()和属性not选择器[att!=val]筛选出具有非空属性的元素:

$('span:not([class!=“”]))

JSFIDLE预览

但是请注意,[att!=val]是一个非标准的jQuery选择器,这意味着该选择器不能在CSS中使用,也不能与document.querySelectorAll()一起使用。如果您像我一样,坚持遵循标准,因此希望尽可能避免使用非标准的jQuery选择器,那么下面是一个直接的等价物:

$('span:not([class]),span[class=”“]))

这和

  • span具有属性的元素,以及
  • span具有class属性的元素,但仅当属性值为空时

不过,在大多数情况下,您应该能够仅获得第一部分:

$('span:not([class]))

通常,在负责输出的应用程序生成的标记中,或者在不注意的开发人员生成的标记中,只能找到空的class属性

发表评论