1

下面的 ":first-of-type" 对我有用,但 ":last-of-type" 不行。

<div class="wrapper">
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
    <div class="shadow"></div>
</div>

.wrapper .item:first-of-type {
    background-color: blue;
}
.wrapper .item:last-of-type {
    background-color: red;
}

即使通过 jQuery 计算元素的数量,我也会收到以下结果:

$('.wrapper .item').size(); // equals 3
$('.wrapper .item:first-of-type').size(); // equals 1
$('.wrapper .item:last-of-type').size(); // equals 0

先感谢您。

4

3 回答 3

2

它们都适合我,但你应该知道jQuery 不支持first-of-typelast-of-type.

他们只是因为querySelectorAll支持他们而工作。所以不支持的浏览器qSA会崩溃。


顺便说一句,您的0结果来自first/last-of-type考虑元素类型的事实,即使您只指定了类。我的测试有点不同。

于 2011-12-23T19:55:40.440 回答
1

jQuery 不支持:last-of-type- http://selectivizr.com/ - 查看库比较表。你可能想看看这个插件来帮助你 - https://github.com/keithclark/JQuery-Extended-Selectors

于 2011-12-23T19:55:18.077 回答
1

你为什么不使用first()and last()?前者选择匹配集中的第一个元素,后者选择最后一个元素。

是与:first和相关的错误报告:last-of-type

于 2011-12-23T19:55:29.853 回答