プロが教える店舗&オフィスのセキュリティ対策術

初めまして。

よく、リンクに触れると、下に説明文が表示される…というようなサイトがありますよね。
それの応用で、innerHTMLを使わずに以下のような物を作りたいのですが、お力を貸してくださいm(_ _)m
ボタンAとボタンBがあって、ボタンAをクリックすると画像Aを表示。
ボタンBをクリックすると画像Aから画像Bに表示が切り替わる。
その表示した画像に個別のリンクを貼る。


<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><A onMouseOver="img.innerHTML='<a href=URL><IMG src=画像Aアドレス></a>'" onMouseOut="text.innerHTML='<a href=リンクA><IMG src=画像Aアドレス></a>'">ボタンA</A></td>
<td rowspan="2"><font id="img"></font></td>
</tr>
<tr>
<td><A onMouseOver="img.innerHTML='<a href=URL><IMG src=画像Bアドレス></a>'" onMouseOut="text.innerHTML='<a href=リンクB><IMG src=画像Bアドレス></a>'">ボタンB</A></td>
</tr>
</table>


という物を作りたいのですが、innerHTMLは対応していないブラウザが多いので、使用したくないのです。
JavaScript、CSSはOKです!
よろしくおねがいします。

A 回答 (2件)

そういうのはあらかじめ全部書き出しておいて隠す。


必要に応じて表示するときれいに書けます。
<style type="text/css">
.hidden{
display:none;
}
</style>
<script type="text/javascript">
function clickFunc(areaid){
var area=document.getElementById(areaid);
var n=area.parentNode.firstChild;
while(n){
if(n.nodeName=="DIV") n.style.display="none";
n=n.nextSibling;
}
area.style.display="block";
}
</script>

<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><a href="#" onclick="clickFunc('areaA')">ボタンA</a></td>
<td rowspan="2">
<div id="areaA" class="hidden"><a href=URLA><IMG src=画像A></a>Aだよん</div>
<div id="areaB" class="hidden"><a href=URLB><IMG src=画像B></a>Bですわ</div>
</td>
</tr>
<tr>
<td><a href="#" onclick="clickFunc('areaB')">ボタンB</a></td>
</tr>
</table>
    • good
    • 0
この回答へのお礼

できました~^^
こんなに早く回答して頂けて、助かりました!
ありがとうございますm(_ _)m

お礼日時:2008/05/21 12:21

onMouseOutの後がどちらも間違っています。


text.innerHTML
ではなく、
img.innerHTML
ですよね?

この回答への補足

ごめんなさい><
投稿してから気づいたんですが、消せないし、編集できないし、自分では書き込みできないし…と困っていました^^;
正しいのは下記になります。

<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><A onMouseOver="img.innerHTML='<a href=URL><IMG src=画像Aアドレス></a>'" onMouseOut="img.innerHTML='<a href=リンクA><IMG src=画像Aアドレス></a>'">ボタンA</A></td>
<td rowspan="2"><font id="img"></font></td>
</tr>
<tr>
<td><A onMouseOver="img.innerHTML='<a href=URL><IMG src=画像Bアドレス></a>'" onMouseOut="img.innerHTML='<a href=リンクB><IMG src=画像Bアドレス></a>'">ボタンB</A></td>
</tr>
</table>

補足日時:2008/05/21 11:53
    • good
    • 0

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