プロが教えるわが家の防犯対策術!

(1)オンマウスで、オンしているセルではないセルの背景画像を変える方法と、
(2)オンマウスで、セルではなく、テーブル自体の背景画像を変える方法を
教えて下さい。

(1)
<table><tr>
<td>1111</td> ←このセル(文字)にオンマウスして
<td>2222</td>
<td>3333</td> ←このセルの背景を変える
</tr></table>

(2)
<table background="*****.jpg"><tr>
<td>1111</td> ←このセル(文字)にオンマウスしてテーブルの背景を変える
<td>2222</td>
<td>3333</td>
</tr></table>



こちらで使用しているブラウザはSafari2.0.4とFireFox3.0.8です。
お願いします。

A 回答 (2件)

こんな感じで・・・



<script>
function change(obj){
var p=obj.parentNode;
while(p){
if(p.nodeName=="TABLE") break;
p=p.parentNode;
}
p.style.backgroundImage="url(****.jpg)";
}
</script>
<table>
<tbody>
<tr>
<td onMouseover="change(this)">1111</td>
<td>2222</td>
<td>3333</td>
</tr>
</tbody>
</table>
    • good
    • 0
この回答へのお礼

おおっ、マウスオーバーでちゃんとテーブルの背景が変わりました!

ありがとうございます!(>∀<)

他の場合など疑問が出てきたので(&私からのレスが遅くなってしまいそうなので)、改めて質問し直したいと思います。

お礼日時:2009/04/19 01:56

あなたのいう「オンマウス」って、OnMouseoverなのかOnMouseout


なのかOnMousedownなのかOnMouseupなのかOnMousemoveなのか、そ
こをまず明らかにしましょう。ちなみにアウトマウスとかインマウ
スとかはありません。

まぁ、どれでもヤルことは一緒なんですけどね。まず、引数でidと
ファイルを指定して背景を設定するjavascriptを書きます。そうで
すね、ありがちですがChngBg(id,file)とかにしましょうか。で、
<table id="hoge"><tr>
<td id="foo" onMousexxxx="ChngBg("baa","gaa.png">1111</td>
<td>2222</td>
<td id="baa">3333</td>
</tr></table>
とでもすれば、fooでマウスがどうにかなったときにbaaの背景が
gaa.pngに変わります。そこら中に仕込んどくとしっちゃかめっ
ちゃかで面白いですね。

で、ChngBg(id,file)ですが、たとえば最低限
<script type="text/javascript">
<!--
function ChngBg(id, file) {
file = "url('" + file + "')";
document.getElementbyId(id).style.background = file;
}
-->
</script>
みたいな雰囲気になるはずです。違ってたらjavascriptのカテゴリ
で訊いてみてください。
    • good
    • 0
この回答へのお礼

あ、そうですよね。OnMouse何なのかわからないですよね。曖昧ですみません(><;)

こちらの勉強不足でちょっと理解しきれませんでした。
(勉強してたら絶対わかる回答なんだと思います。すみません><;)

「他にこうしたらどうなるんだろう」という疑問も出てきたので、出直してきます。

回答、ありがとうございました!

お礼日時:2009/04/19 01:43

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!