0

アンカー タグをイメージ マップに関連付けるにはどうすればよいですか?

アンカータグにカーソルを合わせると、画像上のマップされた領域が選択されるはずです。

http://myffi.biz/のようなもの。これはフラッシュですが、イメージ マップを使用してこれを行うことはできますか? リンクにカーソルを合わせると、画像上のマップされた領域が選択されます。

これは可能ですか?私は明確であることを願っています

4

1 に答える 1

4

はい、Flash がなくても実行できますが、イメージマップはまったく必要ありません。ホバーイベントをマップ上の正しい画像にフェードインさせるだけで、jQuery で簡単に実行できます。このようなものがうまくいくかもしれません:

<ul class="region">
    <li><a href="#" id="europe">Europe</a></li>
    <li><a href="#" id="asia">Asia</a></li>
    <li><a href="#" id="africa">Africa</a></li>
    <li><a href="#" id="australia">Australia</a></li>
</ul>
<div id="region-map">
    <div id="region-overlay"></div>
</div>

また、CSS では、領域がregion-map選択されていない背景があり、region-overlay別の領域が選択されていると定義します。

#region-map, #region-overlay {
    width: 640px;
    height: 320px;
}

#region-map {
    background: url(map-base.jpg) 0 0 no-repeat;
}

#region-overlay.europe {
    background: url(map-europe.jpg) 0 0 no-repeat;
}

#region-overlay.asia {
    background: url(map-asia.jpg) 0 0 no-repeat;
}

#region-overlay.africa {
    background: url(map-africa.jpg) 0 0 no-repeat;
}

#region-overlay.australia {
    background: url(map-australia.jpg) 0 0 no-repeat;
}

そして、必要な jQuery コードは次のとおりです。

$(function() {
    $('ul.region a').hover(function() {
        // Get the current region
        var region = $(this).attr('id');
        // Hide the current overlay, change it's map and change it back.
        $('#region-overlay').fadeOut(200, function() {
            $(this).attr('class', region).fadeIn(200);
        });
    }, function() {
        // Hide the overlay
        $('#region-overlay').fadeOut(200);
    });
});

これは完璧ではありませんが、開始する必要があります。

実際の例は次の場所にあります。

http://www.ulmanen.fi/stuff/hovermap/

于 2010-01-07T06:41:12.830 に答える