【发布时间】:2015-04-13 23:41:31
【问题描述】:
我正在尝试为以下元素设置自定义样式
- ul - 许多孩子中的第一个(ul.first)
- 在许多孩子中最后 (ul.last)
- 唯一的孩子(ul.first.last 或 ul.only)
HTML:
<ul class="selector">
<li class="selector">some li
<ul class="">
<li>some fancy li - the ul parent should have first class</li>
</ul>
<ul class="">
<li>some more li - the ul parent should have last class</li>
</ul>
</li>
<li class="selector">some second li
<ul class="">
<li>some lonely li - the ul parent should have first and last classes</li>
</ul>
</li>
</ul>
所以我想出了一个 jQuery 来解决这个问题
$('ul.selector li.selector > ul').each(function () {
if ($(this).is(':first') && $(this).is(':last')) {
$(this).addClass('first last');
} else if ($(this).is(':first')) {
$(this).addClass('first');
} else if ($(this).is(':last')) {
$(this).addClass('last');
}
});
感谢您的任何建议。
更新 - 这是一个你可以玩的小提琴,基于一个答案:http://jsfiddle.net/qAtpe/
【问题讨论】:
标签: jquery css-selectors