
<td>内でマウスオーバー時に背景色、文字色が変わるものを作っています。
背景色は普通にthis.style.background.colorで変更できますが、
中の文字はリンクなのでstyle.colorでは変更できません。
文字の上ではなく、セルにマウスが入った時点でリンク色を変えたいのでスタイルシートではNGでした。
javascriptで1部のリンク色だけを変えたい場合はどうしたらいいんでしょう??
リンクを外して<td>内クリック時にリンクすることもできますが、ステータスバーに何も表示されないのは嫌なのでなしてす。
説明がうまくできていないと思うので不明な部分は補足します。
だれか分かる方いらっしゃいましたらよろしくお願いします。
No.2ベストアンサー
- 回答日時:
条件の詳細がわからないのですが、文字に重ならなくてもセルかかっただけで機能するリンクはスタイルシートだけでも出来ると思いますよ。
td a {
display:block;//これが重要
width:~;//お好みのサイズ、またはセルにあわせるなら100%で。
height:~;//同上
}
td a:hover{
background:~;
color:~;
}
http://allabout.co.jp/internet/hpcreate/closeup/ …
↑参考
No.1
- 回答日時:
<td>の中にある<a>を個別で呼び出すために、オンマウスした時に文字色を変えたいリンクには全てIDを振る必要があります。
プログラムを実行する<td>タグに
onmouseover="xChangeColor(this,[<a>のID])" onmouseout="xResotreColor()"
を追加します。xChangeColorで色を変更し、xRestoreColorで元に戻します。
xChangeColorの第二引数に文字色を変更するリンクのIDを代入します。以下のサンプルではIDが数字になっているので必要ありませんが、IDに数字以外の文字が含まれる場合は、
onmouseover="xChangeColor(this,'apple')"
このようにシングルクォーテーションで囲う必要があります。
xRestoreColorには引数はありません。xChangeColorで最後に色を変更したテーブルタグとリンクタグへのアクセス名を一時的に保存しているためです。
<script language="javascript" type="text/javascript"><!--
function xChangeColor(table,id){
restable=table;
resid=id;
table.style.backgroundColor="#ff8800";
document.getElementById(id).style.color="#00ff00";
}
function xResotreColor(){
restable.style.backgroundColor="#ffffff";
document.getElementById(resid).style.color="#0000ff";
}
//-->
</script>
<table border="1" cellpadding="2" cellspacing="0">
<tbody>
<tr>
<td onmouseover="xChangeColor(this,1)" onmouseout="xResotreColor()"><a href="#" id="1">りんご</a></td>
<td onmouseover="xChangeColor(this,2)" onmouseout="xResotreColor()"><a href="#" id="2">みかん</a></td>
</tr>
<tr>
<td onmouseover="xChangeColor(this,3)" onmouseout="xResotreColor()"><a href="#" id="3">バナナ</a></td>
<td onmouseover="xChangeColor(this,4)" onmouseout="xResotreColor()"><a href="#" id="4">メロン</a></td>
</tr>
</tbody>
</table>
回答ありがとうございます!
あんなにわかりにくい説明なのに丁寧に答えていただいて。。。
やはりIDを設定するんですね。
ソースまで書いていただいてありがとうございます!
参考にしたいとおもいます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プルダウンで選択すると、DBの...
-
一覧から選択した行の行番号を...
-
ハイパーリンクを別ウインドウ...
-
ブルダウン選択でページの表示...
-
JavaScriptでテーブルをクリッ...
-
テーブル内に表示されている数...
-
Tablesorteを2行一組でソートする
-
テーブルの項目の値取得
-
tdの中をクリックしたらチェッ...
-
クリックされた罫表セルの行番...
-
【UWSC】HTML内のある部分を抽...
-
iframeの内のTable(rowspan有り...
-
サイト内の物件を複数の検索条...
-
tabindexの取得
-
return trueとreturn falseの用...
-
指定したタグを書き換えるには?
-
selectメニューのselectedの位...
-
JSPとJavaScriptの連携について...
-
ラジオボタンにタブインデック...
-
【JavaScript】プルダウンで数...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プルダウンで選択すると、DBの...
-
ハイパーリンクを別ウインドウ...
-
tableの任意行にfocusをあてる
-
特定<table>内の<td>の色を変える
-
一覧から選択した行の行番号を...
-
CSVデータをツリー表示させたい
-
テーブルの項目の値取得
-
JavaScriptでテーブルをクリッ...
-
至急!GetElementById でtdの...
-
jspでのArrayListの値の表示
-
JavaScriptで特定のtdタグにcla...
-
javascript クリックすると、あ...
-
ビンゴゲームの作成
-
【UWSC】HTML内のある部分を抽...
-
クリックされた罫表セルの行番...
-
チェックボックスにチェックが...
-
まとめてセルの色を変えたい
-
指定した要素を含んだテキスト...
-
VBScriptの繰り返し文について
-
テーブル内に表示されている数...
おすすめ情報