我在代码中找到了它,并且不知道在.class选择器上使用* .class选择器有什么意义. 无论是在jQuery( Sizzle)选择器上下文还是CSS选择器上下文中,都没有意义. * .class和.class在匹配的元素和特异性
*字符仅在用于引用任何元素时才有意义;它暗示了你在没有类型选择器的情况下使用任何其他简单选择器的那一刻.即便如此,如果有的话,你很少会发现自己需要将事件挂钩或操纵DOM上每个元素的属性.
如果您要使用类,伪类,ID等,那么通用选择器就没有意义,因为无论如何都会相应地过滤所选元素.
此外,这是使用*与其他选择器的一个缺点,引自jQuery documentation:
Caution: The all, or universal, selector is extremely slow, except when used by itself.
这就是Selectors spec所说的:
If a universal selector represented by * (i.e. without a namespace prefix) is not the only component of a 07003 selectors or is immediately followed by a 07004, then the * may be omitted and the universal selector’s presence implied.
Examples:
*[hreflang|=en]
and[hreflang|=en]
are equivalent,*.warning
and.warning
are equivalent,*#myid
and#myid
are equivalent.