- ベストアンサー
ページごとにテキストの色を変えたい。
こんにちは。ぽちたろうです。いつもお世話になりっぱなしです。 今、ホームページ用のメニューを作成しているのですが、 例えば、 ページA ページB ページC という風にメニューがあって、 実際そのページに飛んだ場合 そのメニューの該当部分の色を変えるという風に したいのですがどうしたらよいのでしょうか? (メニューはすべてのページについていて、 今どのページにいるかわかるようにするという感じ) 各ページのスクリプト部分に変数で番号を振って、それを関数で色を変えたいテキストの部分と照らし合わせるようにしたらよいのかと考えたのですが・・・。 どなたか教えてもらえると助かります!
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
メニュー部分がどうなっているのか分からないので取り合えずLI要素にしてみましたが、 liである必要はありませんので適当なものに変えてください。 <li id="menu1"><a href="*****">ページA</a></li> <li id="menu2"><a href="*****">ページB</a></li> <li id="menu3"><a href="*****">ページC</a></li> 以下は<head>~</head>に。ページ番号と該当部分の色の指定を行ってください。 <script type="text/javascript"> <!-- window.onload = function (){ var page = 1; //ページ番号 var obj = document.all || document.getElementById; if (obj) { obj("menu" + page).style.backgroundColor = "#FFBBBB"; //該当部分の色 } } //--> </script>
その他の回答 (1)
- karumakaruma
- ベストアンサー率65% (65/100)
フレームで分けるって事ですかね? とりあえずフレームで分けた場合のやり方 #動作確認はIEのみです。 親htmlにて <FRAME SRC="menu.html" NAME="menu"> <FRAME SRC="main1.html" NAME="main"> という様にmenuとmainに分ける menuにて <A ID=main1 HREF="main1.html" TARGET=main>main1</A> <A ID=main2 HREF="main2.html" TARGET=main>main2</A> <A ID=main3 HREF="main3.html" TARGET=main>main3</A> という様にID=**** をつける 各mainページにて <SCRIPT LANGUAGE="JavaScript"> <!-- function Init(MAIN){ parent.menu.document.all(MAIN).style.backgroundColor= '#FF0000'; } function UInit(MAIN){ parent.menu.document.all(MAIN).style.backgroundColor= '#FFFFFF'; } //--> </SCRIPT> と <BODY onLoad="Init(*****);" onUnLoad="UInit(*****)"> #*****はメニューのID こんな感じでどうでしょう?
お礼
お返事遅くなりすみません。 フレームは使わないのですが この方法で出来そうな気がします。 (まだ、自分で検証してないのですが) どうもありがとうございます。
お礼
回答ありがとうございます。 文字の色を代える場合はどうしたら良いでしょう。