jQuery でインタラクティブ マップを作成しており、カスタムの手描きマップを使用しています。一連の「トリガー ポイント」をマップ全体に配置し、マップのサイズに対して絶対的に配置しました。これらのトリガー ポイントにカーソルを合わせると、その場所に関する情報がツールチップに表示されます。
HTML/CSS:
<div id="map" style="position:relative; background: url(images/map.jpg">
<div class="trigger" data-loc="locationA" style="position:absolute; left:10px; top:3px"><h1 class="tooltip">Location A Title</h1></div>
<div class="trigger" data-loc="locationB" style="position:absolute; left:0px; top:24px"><h1 class="tooltip">Location B Title</h1></div>
<div class="trigger" data-loc="locationC" style="position:absolute; left:140px; top:35px"><h1 class="tooltip">Location C Title</h1></div>
<div class="trigger" data-loc="locationD" style="position:absolute; left:70px; top:103px"><h1 class="tooltip">Location D Title</h1></div>
</div>
JQuery:
$(".trigger").hover(function(){
$(this).find(".tooltip").fadeIn();
}, function(){
$(this).find(".tooltip").fadeOut();
});
いくつかの質問:
1) JQuery を使用して基本的なインタラクティブ マップを作成するには、これが最善の方法ですか?
2) 場所のリストを右側に表示したい。ユーザーがリンクをクリックすると、関連するリンクのツールチップもトリガーされます。上記のように、各トリガーポイントには data-loc 属性があります。右側のアンカー リンクに同じデータ ポイントを設定した場合、jQuery を使用してそれらをリンクし、関連するツールチップのフェードインとフェードアウトをトリガーするにはどうすればよいでしょうか?