Javascript-image-map

提供:Dev Guides
移動先:案内検索

JavaScript-イメージマップ

JavaScriptを使用して、クライアント側のイメージマップを作成できます。 クライアント側のイメージマップは、<img/>タグの usemap 属性によって有効になり、特別な<map>および<area>拡張タグによって定義されます。

マップを形成しようとしている画像は、通常どおり<img/>要素を使用してページに挿入されますが、 usemap という追加の属性が含まれている点が異なります。 usemap属性の値は、<map>要素のname属性の値であり、その前にポンド記号またはハッシュ記号が付きます。

<map>要素は実際に画像のマップを作成し、通常は<img/>要素の直後に続きます。 これは、クリック可能なホットスポットを実際に定義する<area/>要素のコンテナとして機能します。 <map>要素には、マップを識別する名前である name 属性という1つの属性のみが含まれます。 これは、<img/>要素がどの<map>要素を使用するかを知る方法です。

<area>要素は、クリック可能な各ホットスポットの境界を定義する形状と座標を指定します。

次のコードは、イメージマップとJavaScriptを組み合わせて、マウスを画像のさまざまな部分に移動したときにテキストボックスにメッセージを生成します。

<html>
   <head>
      <title>Using JavaScript Image Map</title>

      <script type = "text/javascript">
         <!--
            function showTutorial(name) {
               document.myform.stage.value = name
            }
        //-->
      </script>
   </head>

   <body>
      <form name = "myform">
         <input type = "text" name = "stage" size = "20"/>
      </form>

      <!-- Create  Mappings -->
      <img src = "/images/usemap.gif" alt = "HTML Map" border = "0" usemap = "#tutorials"/>

      <map name = "tutorials">
         <area shape="poly"
            coords = "74,0,113,29,98,72,52,72,38,27"
            href = "/perl/index" alt = "Perl Tutorial"
            target = "_self"
            onMouseOver = "showTutorial('perl')"
            onMouseOut = "showTutorial('')"/>

         <area shape = "rect"
            coords = "22,83,126,125"
            href = "/html/index" alt = "HTML Tutorial"
            target = "_self"
            onMouseOver = "showTutorial('html')"
            onMouseOut = "showTutorial('')"/>

         <area shape = "circle"
            coords = "73,168,32"
            href = "/php/index" alt = "PHP Tutorial"
            target = "_self"
            onMouseOver = "showTutorial('php')"
            onMouseOut = "showTutorial('')"/>
      </map>
   </body>
</html>

出力

画像オブジェクトの上にマウスカーソルを置くと、マップの概念を感じることができます。