3

このスニペットでは、'FirstText'が書き込まれると、最初の行の残りがスキップされます。次に'SecText'、2行目に次のように書かれています。

<pre>
 <script>
  function text(){
  document.write("FirstText \n SecText");
  }
  text();
 </script>
</pre>

しかし、setInterval()この関数を使用すると、単語が隣り合わせに書き込まれます (行はスキップされません)。

助言がありますか?

4

2 に答える 2

8

タグ\n内にいるため、新しい行を作成しています。<pre />通常、<br />の外側に同様の新しい行を表示するには、 a を使用する必要があり<pre />ます。

ページの読み込みが完了する前に呼び出すとdocument.write、出力はその場で入力されます。FirstText \n SecText内に書かれたものが表示されます<pre />

ただし、ページがロードされた後( 内) に呼び出されると、結果が書き込まれる前にsetInterval既存のページがクリアされます。したがって、削除されており、新しい行は表示されなくなりました。<pre />

documentusing を閉じていないのでdocument.close()、 の連続した呼び出しは、 の最初の反復によって開かれたドキュメント ストリームに追加さdocument.writeれます。setIntervalsetInterval

;<br />ではなくa を使用することで、これを修正できます。\n

     <script>
      function text(){
      document.write("FirstText <br /> SecText <br />");
      }

      setInterval(text, 1000);
     </script>

詳細については、https://developer.mozilla.org/en-US/docs/Web/API/document.writeを参照してください。document.write はページをクリアします

于 2013-06-02T19:24:50.597 に答える
2

これを試して:

document.write("FirstText <br /> SecText <br/>");

作業例:

http://jsbin.com/oyolod/4/

于 2013-06-02T19:29:30.780 に答える