我知道有一个*.className
选择器,因为可以有多个带有class = className的html元素。
但是对于应该唯一的ID属性,为什么*#
存在,我们何时才使用它?
感谢。
答案 0 :(得分:2)
答案 1 :(得分:1)
仅仅因为ID应该是唯一的并不意味着它们是唯一的。您可以使用相同的ID创建多个元素,但不应该。 CSS无论如何都不关心,缺乏独特性只会搞砸Javascript。例如,如果你有这个:
<div id='blah'>blah</div>
<div id='blah'>blah</div>
<div id='blah'>blah</div>
<div id='blah'>blah</div>
然后jQuery('#blah')
返回[ div#blah ]
,而jQuery('*#blah')
则返回[ div#blah, div#blah, div#blah, div#blah ]
。
答案 2 :(得分:1)
将通用选择器与ID,类或属性选择器组合起来没有区别:#foo
与*#foo
相同,.bar
与*.bar
相同,和[baz]
与*[baz]
相同。因此,您不希望在这些情况下使用通用选择器。