1

私はjavascriptが初めてです。このコードを作成しました:

 <script>
  function text(){
  var testone=Math.floor(Math.random()*9);
  document.fgColor="green";
  document.bgColor="black";
  document.write(testone+" "+testone+"<br/>");
   }
  setInterval(text,100);
 </script>

1 桁下の 2 列に数字が表示されます。2 列目の数字を少し後に表示したいと思います。何か提案はありますか?

4

1 に答える 1

0

あなたが書いた方法でコードを使用しても、うまくいきません。

代わりに、css スタイリングを使用して目的を達成することをお勧めします。

これは、私がどのようにそれを行うか (ギブまたはテイク) の一般的なアイデアです。

<script>
 // Code goes here
  var b = document.body;
  function text() {
    var testone=Math.floor(Math.random()*9);
    var d = document.createElement('div');
    d.innerHTML += '<span>' + testone + '</span>&nbsp';
    d.innerHTML += '<span style="display:none">' + testone + '</span>';

    setTimeout(function() {
      var childs = d.children;
      for(i = 0; i < childs.length; ++i) {
        childs[i].style.display = 'inline';        
      }      
    },500);

    b.appendChild(d);
  }

  setInterval(text,100);
</script>

上記のコードが正しく機能するには、body タグ内で script タグを実行する必要があります (そうしないと、document.body は null になります)。

この plunkr は、動作中のコードを示しています。

http://plnkr.co/edit/JNJpaH2qEDwEl56C9YpU

<div>また、 の代わりにa を使用するなど、いくつかの自由を取りました<br>。1/2 秒ごとに dom をリフローする効率については心配していません。

于 2013-06-02T22:07:44.263 に答える