0

div 要素をタイマーのように機能させ、1 秒間隔で乱数を表示したいと考えています。http://jsfiddle.net/NHAvS/46/ . それが私のコードです:

var arrData = [];
for (i=0;i<1000;i++)
{
      arrData.push({"bandwidth":Math.floor(Math.random() * 100)});
}

var div = document.getElementById('wrapper').innerHTML =arrData;
document.getElementById('wrapper').style.left = '200px';
document.getElementById('wrapper').style.top = '100px';

しかし問題は、一度に 1 つのデータしか表示されないことです。それを修正する方法はありますか?

ありがとう

4

3 に答える 3

2

これを行う:

setInterval(myfun,1000);

var div = document.getElementById('wrapper');
function myfun(){
   div.innerHTML ='bandwidth :'+Math.floor(Math.random() * 100);
}

見てみましょう: http://jsfiddle.net/techsin/NHAvS/49/

注:あなたの例は、左側で頭にロードするように設定されていたため、混乱していました。つまり、スクリプトがdomの前にロードされるたびに、divが未定義になります。そのため、オンロードに設定すると、もう少し機能します。:D

注:また、jqueryのように関数をチェーンしているようですが、javascriptではそうしません。関数はそれを行うために作られています。つまりdiv= ..getElementById..innerHtml='balbla';、要素ではなく div = bla... を設定します。

于 2013-08-26T18:25:41.957 に答える
0

次のように実行できます。

var delay = 1000, // 1000 ms = 1 sec
    i;
setTimeout(function() {
  document.getElementById('wrapper').innerHTML = arrData[i];
  i++;
}, delay);
于 2013-08-26T18:24:28.840 に答える