将内容添加到每个其他div

时间:2013-06-10 07:03:38

标签: jquery html append

这很简单,但我很困难,需要一些新的头脑来寻求帮助。

我想要实现的是将内容与jQuery附加到div。但每隔一段时间到另一个div,就像这样:

我现在有js它每30秒追加一次内容。 HTML是这样的:

<div class="wrapper">
    <div class="a"></div>
    <div class="b"></div>
</div>

所以每隔一段时间我都希望它添加div b,并且每隔一段时间来添加一次。

抱歉说不好。

4 个答案:

答案 0 :(得分:3)

这是 FIDDLE

setInterval(addDiv, 10000);
var aOrB = "a";

function addDiv() {
    $('#wrapper').append("<div class=" + aOrB + ">This is div with class " + aOrB + "</div>");
    if (aOrB === "a") aOrB = "b";
    else aOrB = "a";
}

答案 1 :(得分:1)

纯粹的js版本循环认为包装器中的所有div并添加到其内容中。如果你想要更多这些div。

var divToAddTo = getElementById('warper').getElementsByTagName('div');
setInterval(function(){
    divToAddTo[i].innerHTML+="your content";
    i++;
    if(i=>divToAddTo.lenght){
        i=0;
    }
},30000);

答案 2 :(得分:0)

尝试

var $wrapper = $('.wrapper');
var container1 = $('.wrapper .a');
var container2 = $('.wrapper .b');

setInterval(function(){

    var content = 'Hello, world!';

    var container = $wrapper.data('nextContainer');

    if(container == null)
         container = container1;

    container.append(content);

    $wrapper.data('nextContainer', container == container1 ? container2 : container1 );


}, 30 * 1000);

答案 3 :(得分:0)

您可以使用setIntervalappendTo功能来实现此目的。这是JSFiddle。看看这个。或者,如果您的array具有固定值,则可以像这样使用item作为新class的{​​{1}}。这是JSFiddle