textareaに何も入っていないときに入力欄をグレーにしたいです。
マウスポインタがどこにあろうと、最初からグレーになっている状態です。
どうしたらいいでしょうか?
始め空欄をグレーにして、入力されたところを他の色に変えるという意図だと思うので以下のようにしてはどうでしょうか?
フォーカスが他へ移動すると値を確かめて、空でなければ white にする関数を呼んでいます。
<script type="text/javascript"> function chknoinput(obj) { if(obj.value != "") { obj.style.backgroundColor = "white"; } } </script>
<textarea onblur="javascript:chknoinput(this);" style="background-color: gray"></textarea>
参考
こういうのでおk?
<script type="text/javascript"> function chgBack() { var obj = document.getElementById("txtTest"); if(obj.value.length == 0) { obj.style.backgroundColor = "gray"; } else { obj.style.backgroundColor = "white"; } } </script> <body onload="chgBack()"> <textarea id="txtTest" onkeyup="chgBack()"></textarea> </body>
コメント(0件)