2

我有一个动态生成的 div 列表,我有这个脚本来制作交替的背景颜色——为了 IE。

<style type="text/css">
.box { height:30px; width:100px; background-color:#fff; }
</style>

<script type="text/javascript">
    $(document).ready(function () {
    $(".box:odd").css("background-color", "#f1f1f1");
    });
</script>

我的html:

<div class="box"></div>
<div class="box"></div>
<div class="box"></div>
<div class="box"></div>
...

我想对 :last-child 应用特殊的 css 样式,但前提是 :last-child 不是 :odd - 仅意味着它具有白色背景。

我怎么做?

4

3 回答 3

4
 $(".box:last").not(':odd').css("background-color", "#f1f1f1"); 
于 2012-10-22T07:28:26.750 回答
4

仅 CSS:

.box:last-child:nth-child(even) { /* Special CSS here */ }

它比使用 jquery 更好。

于 2013-10-10T12:24:05.583 回答
0

你可以试试这个:

$(document).ready(function () {
    if($('.box').length-1%2!=0){
        $(".box:odd").filter(":last").css({"background":"red"});            
    }
});

这是小提琴:http: //jsfiddle.net/jYxeA/

于 2012-10-22T08:06:21.367 回答