0

我有以下动态DOM(因此用户可以添加新的 div,比如帖子),我希望每一秒的“div”都带有另一种背景颜色。我怎么能把它和jquery一起使用?

<div>1
  <div>2
    <div>3</div>
  </div>
</div>

http://jsfiddle.net/Y6DGh/理论上可以无限运行

4

2 回答 2

0

我不知道你是怎么看这个的,但你可以这样做:

HTML

<div class="parent">1
  <div>2
    <div class="colorParents">3</div>
  </div>
</div>

CSS

div{
    height:50px;
    width:50px;
    display:block;
}

div.parent{
    background-color:red;
}

JS

$.each($('.colorParents').parentsUntil('.parent').addBack(), function (i) {
    if (i % 2) {
        $(this).css('background-color', 'red');
    } else {
        $(this).css('background-color', 'blue');
    }

});

http://jsfiddle.net/techunter/EtBCw/

于 2013-06-25T13:03:10.697 回答
0

这应该没问题:

$("div:odd").css("background","red");
$("div:even").css("background","blue");

您需要在添加新元素后运行它,这可能会导致“闪烁”效果......检查这里:http: //jsfiddle.net/balintbako/jnkLz/

于 2013-06-25T12:50:35.000 回答