テキストフィールドに一定時間ごと文字を順番に表示する


動作ブラウザ 【 IE:3.0  NN:2.0
Internet Explorer Netscape Navigator DreamPassport iCab
3.0x 4.0x 4.5 5.0x 5.5 2.0x 3.0x 4.0x 4.x 6.0 2 3 2.x
Windows - - -
Macintosh - - -
UNIX - - - - - - - -
Dreamcast - - - - - - - - - - -

ポイント msg = new Array("はろ〜","調子は?","ふにゃ〜","あれ?"); function rndText() { document.myForm.myText.value = msg[count++]; clearTimeout(timerID); if (count < msg.length) timerID = setTimeout("rndText()",1000); }
説  明 テキストフィールドに順番にメッセージを表示するには、あらかじめ配列内に表示するメッセージを入れておき、どのメッセージを表示するかを示すカウンタ変数を用意します。表示するメッセージはカウンタ変数の値をキーにしてテキストフィールド内に書き込みを行います。カウンタの値がメッセージを格納している配列変数のサイズよりも小さい場合のみsetTimeout()を使って定期的に処理させることで順番にメッセージを表示させることができます。
サンプル <html> <head> <title>テキストフィールドに一定時間ごと文字を順番に表示する</title> <script Language="JavaScript"><!-- msg = new Array("はろ〜","調子は?","ふにゃ〜","あれ?"); timerID = 10; count = 0; function rndText() { document.myForm.myText.value = msg[count++]; clearTimeout(timerID); if (count < msg.length) timerID = setTimeout("rndText()",1000); } // --></script> </head> <body onLoad="rndText()"> <form name="myForm"> <input type="text" name="myText"> </form> </body> </html>
補足説明 なし

■サンプルスクリプトを実行する >>実行
■各ブラウザでの動作結果を見る >>View!

写真素材 PIXTA