如何在innerhtml中使用重复值?

时间:2013-08-04 22:38:09

标签: javascript

我使用了这段代码但不重复

它会增加值但不会达到初始值0
请帮忙

   i=0;
        function loading()
        {
            text=["Loading.","Loading..","Loading...","Loading...."];
            window.setInterval(wr(),500)
        }
        function wr()
        {
            if(i<4)
            {
                wr='document.getElementById("text").innerHTML=text[i]';
                alert(i);
            }
            else
                i=0;    
            return wr;
        }

2 个答案:

答案 0 :(得分:2)

你的代码很复杂。定义一个简单的函数,传递给setInterval并确保增加计数器变量:

var i = 0; // initialize counter
var textElement =  document.getElementById("text");
setInterval(function() {
    i = i % 4; // make sure `i` is at max 3 and reset to 0
    var text = 'Loading';
    for (var j = i; j--; ) {
        text += '.'; // add the correct number of periods
    }
    textElement.innerHTML = text; // set text
    i++; // increase counter
}, 500);

DEMO

答案 1 :(得分:1)

这是对similar answer I gave a while back的轻微修改。

var i = 0;
setInterval(function() {
    i = ++i % 4;
    document.getElementById('text').innerHTML = "Loading"+Array(i+1).join(".");
}, 500);