テキストフィールドのサイズを文字数に応じて変える


動作ブラウザ 【 IE:4.0  NN:6.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 - - - - - - - - - - × × -

ポイント str = msg[Math.floor(Math.random()*msg.length)]; document.myForm.myText.style.width = str.length * 14;
説  明 文字数に合わせてテキストフィールドの幅を変えるにはテキストフィールドのスタイルのwidthに値を指定します。基本的には文字が固定幅として「文字数×1文字の幅」でwidthに入れる値を計算します。
サンプル <html> <head> <title>テキストフィールドのサイズを文字数に応じて変える</title> <script Language="JavaScript"><!-- msg = new Array("長さが","表示する文字に応じて","変わります"); function wdText() { str = msg[Math.floor(Math.random()*msg.length)]; document.myForm.myText.style.width = str.length * 14; document.myForm.myText.value = str; setTimeout("wdText()",1000); } // --></script> </head> <body onLoad="wdText()"> <form name="myForm"> <input type="text" name="myText"> </form> </body> </html>
補足説明 なし

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

写真素材 PIXTA