• 締切済み

HPビルダーイメージマップとロールオーバーについて

カテゴリがあってるかわかりませんが質問させてください。 僕は現在HPビルダー10を使っています。 それで一つの画像へイメージマップを使って6つのコンテンツへ リンクさせる事は今出来ています。 イラストをマップにしているのですがそのイラストにふきだしが追加された 同じサイズの画像へと一つ一つのリンクがカーソルを乗せると切り替わるようにしたいのです。 そこでイメージマップのイベントからOnMouseOverで指定したのですが必ず layers.lenghtはNullまたはオブジェクトではありません。とエラーコードが出てしまいます。 このエラーが出ないようにするには、そして本来の目的である リンクにポインタを乗せると画像が切り替わるようにするには どうすれば良いのでしょうか? 教えてください。

みんなの回答

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

マウスオーバーで画像全体が別の画像と入れ替わるっていう感じでしょうか? >このエラーが出ないようにするには、 エラーの原因が不明なのでわかりませんが、想像するにスクリプトが使われていてその中でエラーが発生していると思われます。 その原因を修正するか、スクリプト自体を実行しないようにしてしまうとか。 >リンクにポインタを乗せると画像が切り替わるようにするには >どうすれば良いのでしょうか? HPビルダーを知らないので、操作等はまったくわかりませんが… こんな感じではどうでしょうか。(A.jpg~D.jpgなどはご自分の環境に合せて修正) <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html lang="ja"> <head><title>test</title> <meta http-equiv="Content-Style-Type" content="text/css"> <meta http-equiv="Content-Script-Type" content="text/javascript"> <script type="text/javascript"> <!-- function hoge(e, a){ var t=e.target || e.srcElement; document.getElementById("map").src = e.type=="mouseover"?t.getAttribute("alt"):a; } //--> </script> </head> <body> <div> <img src="A.jpg" id="map" usemap="#map1" alt="imagemap" style="width: 300px; height: 200px; border:0;"> <map name="map1" onmouseover="hoge(event);" onmouseout="hoge(event, 'A.jpg');"> <area shape=rect coords="0,0,50,100" title="area1" alt="B.jpg" href="BBB.html"> <area shape=rect coords="100,0,150,100" title="area2" alt="C.jpg" href="CCC.html"> <area shape=rect coords="200,0,250,100" title="area3" alt="D.jpg" href="DDD.html"> </map> </div> </body> </html>

関連するQ&A

専門家に質問してみよう