关于CSS伪类:first及jQuery中ul li:first用法的技术咨询
搞懂jQuery的
:first选择器 嘿,我来帮你理清这个困惑!首先要明确:CSS里并没有:first这个伪类,这就是你找不到相关CSS文档的原因~而你看到的ul li:first是jQuery专属的选择器,属于jQuery对CSS选择器的扩展,所以得去jQuery的文档里找它的说明。
接下来解释它的具体作用:
- jQuery的
:first选择器会从你选中的所有元素组成的整个集合里,挑出第一个元素。举个例子,假设页面里有多个ul,每个ul里都有li,$("ul li:first")只会匹配所有ul下所有li中的那第一个,也就是你看到的只隐藏“Coffee”,而第二个“Coffee 2”不在这个集合的首位,所以不会被选中。
如果你想实现“每个ul下的第一个li都被隐藏”,那应该用和CSS同名的:first-child选择器(jQuery也支持这个标准伪类),也就是写$("ul li:first-child"),这样每个列表里的第一个子li都会被选中并隐藏。
最后再给你划个重点:
- 别把jQuery的扩展选择器和CSS标准伪类搞混啦,
:first是jQuery独有的,只在jQuery选择器里生效; - 区分两个容易混淆的选择器:
$("ul li:first")→ 匹配所有符合ul li的元素中的第一个(全局唯一)$("ul li:first-child")→ 匹配每个ul下的第一个li子元素(每个父元素下都选一个)
内容的提问来源于stack exchange,提问作者Jake Shepherd
相关产品推荐
相关产品推荐

