準・究極の選択

以下のソースで、

マウスがボタンの上のある時、

ボタンがoffからonに変わりますが、マウスが離れた時には元にoffに戻ってしまいます。

これを、ほかのボタンを押す前までには、ずっとonの状態にするにはどうすればいいでしょうか?


<a href="news.php" target="FrameMain" onMouseOut="MM_swapImgRestore()"
onMouseOver="MM_swapImage('Image-lesson','','images/button_on.png',1)">
<img src="images/button_off.png" name="Image-lesson" width="141" height="32" border="0">
</a>

よろしくお願い致します。

A 回答 (2件)

ご提示の内容はHTMLソースの一部のみで、スクリプトの部分が不明なのと、DWはまったくわかりませんが…




画像がリストなどで列挙されているものと仮定したサンプルを。
マウスオンの場合に画像は『○○_on.png』に変わるものと仮定しています。
(全角空白は半角に)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="ja">
<head><title>sample</title>
<meta http-equiv="Content-Style-Type" content="text/css">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<style type="text/css">
<!--
#fuga, #fuga li { list-style-type:none; margin:0; padding:0; }
#fuga img { width:141px; height:32px; border:0; }
//-->
</style>

<script type="text/javascript">
<!--
function change(evt){
 var t = evt.target || evt.srcElement;
 var i=0, img;
//マウスオンがimg要素でない場合は何もしない
 if(t.nodeName != "IMG") return;

//全部のimgのsrcの_on.pngを.pngに戻す
 var imgs = document.getElementById("fuga").getElementsByTagName("img");
 while(img=imgs[i++]) img.src = img.src.replace(/_on\.png$/, ".png");
//該当要素のsrcを_on.pngに変更
 t.src = t.src.replace(/\.png$/, "_on.png");
}
//-->
</script>
</head>

<body>

<ul id="fuga" onmouseover="change(event)">
<li><a href="hoge1"><img src="hoge1.png" alt="h1"></a></li>
<li><a href="hoge2"><img src="hoge2.png" alt="h2"></a></li>
<li><a href="hoge3"><img src="hoge3.png" alt="h3"></a></li>
<li><a href="hoge4"><img src="hoge4.png" alt="h4"></a></li>
</ul>

</body>
</html>
    • good
    • 0

DWでの処理という意味でしょうか?



特定のボタンと他のボタンを絡ませてやる場合は
それなりにめんどくさい処理になりますね

(1)ボタン(画像?)を押す
(2)他のボタンをすべてoffに戻す
(3)自分自身をonにする

のような処理をonclickに書いておけばよいでしょう
    • good
    • 0

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