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

USEMAPでエリア指定した(画像の)一部にマウスオーバーした時に、補足説明画像をポップアップさせる方法はありますでしょうか?

従来はCSSの処理で、一つの画像にマウスオーバーした時に下記【1】の手順で別の説明用画像をポップアップ表示する処理が出来ているのですが、(通常はhidden,マウスオーバーでvisible)

今回【2】のようなUSEMAPで指定した(大きな画像の)一部のEREA指定部にマウスがオーバーした時点でポップアップ出来れば良いなあ…と、質問させていただきました。
教えていただければうれしいです。よろしくお願いします。<(_ _)>

ちなみに、USEMAPを使う理由ですが、当該画像エリア部をクリックすると対応したビデオ映像が別窓で表示されるようにしています。
この動作は必要ですのでご配慮ください。

なお、ALT属性は画像が使えません。
よろしくお願いします。

-------------------------------------------------------
【1】
<HEAD>
.popup01 A {
POSITION: relative
}
.popup01 A IMG.message {
LEFT: -50px; VISIBILITY: hidden; WIDTH: 250px; POSITION: absolute; TOP: -50px; HEIGHT: 42px
}
.popup01 A:hover {
VISIBILITY: visible
}
.popup01 A:hover IMG.message {
VISIBILITY: visible
}
</HEAD>

<BODY>
<A href="001.jpg" ALT="*" BORDER="0"><IMG class=message src="popup001.gif" border=0></A>
</BODY>

-------------------------------------------------------
【2】
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
function sub_open_movie01(){
window.open("./movie-con01.html",""," width=600,height=550,left=50,top=50,menubar=yes,scrollbars=yes");
}
//-->
</HEAD>


<BODY>
<img src="002.jpg" USEMAP="#UserMapName">

<MAP NAME="UserMapName">
<AREA SHAPE="RECT" COORDS="10,10,50,50" HREF="javascript:sub_open_movie01();">
</MAP>
</BODY>

-------------------------------------------------------
記述はCSS,Javascript等いずれでも結構ですので、マウスオーバーでポップアップ→マウスアウトで消え、クリックで別窓映像表示してくれればうれしいです。
単一の画像に対して(マウスオーバー・アウト)の記述はネットで検索するとたくさん教えてもらえるのですが、USEMAP中での処理に関して(マウスオーバー・アウトとクリックで)各々別の動作(画像表示ON,OFFと別窓表示window.open)をするような解説は見つけられませんでした。

よろしくお願いします!<(_ _)>

A 回答 (1件)

>ネットで検索するとたくさん教えてもらえるのですが、USEMAP中で


>の処理に関して、各々別の動作をするような解説は見つけられま
>せんでした。
単純に、そのまま組み合わせてしまえばよいのでは?

<サンプル>
<html>
<head>
<script type="text/javascript">
<!--
function A() {
alert('クリックされた時の処理');
return false;
}
function B(m_id, f) {
document.getElementById(m_id).style.display = f?'block':'none';
}
//-->
</script>
</head>

<body>
<img src="002.jpg" usemap="#UserMapName">
<div id="mes" style="width:12em; background:#FF0; display:none;">
メッセージとか画像とか
</div>

<map name="UserMapName">
<area shape="rect" coords="10,10,50,50" href="#"
onclick="return A()" onmouseover="B('mes',true)" onmouseout="B('mes')">
</map>
</body>
</html>
    • good
    • 0
この回答へのお礼

大変適切なご指導ありがとうございました。
教えていただいた手順にてバッチリ動作しました。
感謝しております!
<(_ _)>

お礼日時:2009/12/01 18:27

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