私の答えを2つの部分に分けたほうがいいと思います。
A-すべてを最初から作成します(SVG、JavaScript、およびHTML5を使用)。
- 新しいHTML5ページを作成します
- 新しいSVGファイルを作成します。クリック可能な各領域(州)は、SVGファイル内の個別のSVGポリゴンである必要があります(SVGファイルの作成にはAdobe Illustratorを使用していますが、Inkscapeなどの代替ソフトウェア製品も多数あります) 。
- マウスオーバーとクリックイベントをポリゴンに1つずつ追加します
<polygon points="200,10 250,190 160,210" style="fill:lime;stroke:purple;stroke-width:1"
onmouseover="mouseOverHandler(evt)"
onclick="clickHandler(evt)" />
- JavaScriptコードの各イベントのハンドラーを追加し、目的のコードをハンドラーに追加します
function mouseOverHandler(evt) {};
function clickHandler(evt) {};
- SVGファイルをHTMLページに追加します(私はインラインSVGを好みますが、リンクされたSVGファイルも使用できます)
- サーバーにファイルをアップロードします
B- FLDraw Interactive Image Creatorなどのソフトウェアを使用します(地図画像があり、それをインタラクティブにしたい場合のみ):
- 空のプロジェクトを作成し、新しいプロジェクトを作成するときにベースイメージとしてマップイメージを選択します
- 各州のポリゴン要素を([形状]メニューから)追加します
- ポリゴンごとにダブルクリックして[プロパティ]ウィンドウを開き、マウスオーバーしてクリックするイベントタイプを選択します。また、形状の不透明度を0に変更して非表示にします。
- プロジェクトを保存してHTML5に公開すると、FLDrawは、サーバーにアップロードできるプロジェクトに必要なすべてのファイルを含む新しいフォルダーを作成します。
オプション(A)は、プログラマーであるか、必要なコードとSVGファイルを作成する人がいる場合に非常に適しています。オプション(B)は、誰かを雇ったり、からすべてを作成するために自分の時間を費やしたくない場合に適しています。スクラッチ
他にもいくつかのオプションがあります。たとえば、SVGの代わりにHTML5 Canvasを使用しますが、HTML5 Canvasを使用してズーム可能なマップを作成するのは簡単ではありません。おそらく、私が知らない他の方法もあります。