- ベストアンサー
JavaScriptを使用してテキストの背景色を変える方法
- JavaScriptを使用してテキストの背景色を変える方法について教えてください。
- 現在、テキストの背景色を変える処理をJavaScriptの外部ファイルに記述していますが、ページ全体の色が変わってしまいます。
- テキストボックスの背景色だけを変える方法について教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>気に障られたのでしたらすみません。 いぇ、そういうわけではありません。 ただ、私の知りうる限り、bgColorという属性を持っているのはdocumentsとlayerだけみたいなので、できないのではないか??と思ったのです。 ちなみに、同一ページ内でテストしても objText.document.bgColor='red'; の場合IEはページ背景色がかわり、NNではエラーになりました。 よく考えると、HTMLのINPUTにもカラー関係の属性などありません。変更するにはスタイルシートを用いる必要があります。ですから、JavaScriptから操作するにしても、一度スタイルシートを介さなくてはならないのではないでしょうか? そこで、 objText.style.backgroundColor'red'; にしてはいかがでしょう? あと、ちょっと邪道ですが思いついたもの。 あらかじめ、変更後のデザインを適当なID(たとえばinTxt)でスタイルシートで定義しておき、JavaScriptで objText.id = 'inTxt' ; という風にIDを変更して定義されているIDのスタイルシートが効くようにする。 参考になればよいのですが・・・。
その他の回答 (2)
- sight
- ベストアンサー率53% (199/370)
>普通に考えると、確かにそうですよね? >けれど、それではできなかったんです。 それほどふつうに考えた訳ではないのですが、 もっとふつうにかんがえるのならば、Form ElementsであるINPUTエリアには bgColorという属性が存在しないのではないでしょうか? 外部ファイル云々、と書かれていますが、同一ドキュメント中に記述した場合は期待通りの動きをしたということなのでしょうか??
補足
またまたすみません。 普通という表現が良くなかったようですね。 気に障られたのでしたらすみません。 同一ドキュメント内に記述した場合については、 いろんなHPでサンプルが表示されていました。 けれども、それをどうにかして外付けにできないかなと 奮闘しているのです。
- sight
- ベストアンサー率53% (199/370)
全体のソースがある訳じゃないので試しませんけど、 >objText.document.bgColor='red'; って、なにかおかしくありませんか? これ、objTextをもとにもどすと、 document.form.tC1.document.bgColor='red'; ですよね?? 「ドキュメントのフォームのtC1のあるドキュメントの背景色」 と解釈されているのでしょうか?ブラウザには。 objText.bgColor='red'; とかになるんじゃないですか?
補足
ご記入いただいてありがとうございます。 普通に考えると、確かにそうですよね? けれど、それではできなかったんです。 で、悩んでいるのです。 なんででしょうかねぇ・・・。
お礼
できましたー!! 「objText.style.backgroundColor'red'; 」 の方でやってみたら、ばっちりできました。 長々とおつきあいいただいて 本当にありがとうございました。 基礎ができてないくせに、欲張りすぎかもしれません。 また何かありましたら、懲りずに書き込みさせていただきたいと思います。 よろしくお願いします。