2

リンクマップで画像を作成したい。マップには、非常に頻繁に変更する必要がある多くの領域が含まれます。数秒ごとに領域を再作成する代わりに、ユーザーが実際に画像をクリックしたときにのみ領域を作成したいと思います。

イベントが発生したらエリアを作成することでこれが可能になることを願っていましたmousedownが、これは機能していないようです (新しく作成されたエリアのクリックは処理されません)。

これまでの私のjavascriptコード(フィドル):

$(document).ready(function () {
    $('#overlayDiv').mousedown(function () {
        $('#image').click(function () {
            $('#linkmap').children().remove();
            $(document.createElement('area'))
                .attr("shape", "rect")
                .attr("onclick", "alert('click');")
                .attr("coords", "0,0, 400,400")
                .appendTo('#linkmap');
        });
    });
});

起こるべきことの「ワークフロー」

  1. 画像をクリック
  2. すべての既存の領域が削除されます
  3. エリアが再現されています
  4. クリックは新しい領域で処理されます
4

1 に答える 1

0

map タグに name 属性がないため、これは機能しません。

更新されたフィドルをチェックしてください: http://jsfiddle.net/gFVVh/1/

<img src="https://www.google.de/logos/2013/henry_van_de_veldes_100th_birthday-1402005-hp.jpg" usemap="#linkmap" id="image" />
<map id="linkmap" name="linkmap"></map>
于 2013-04-03T23:03:26.880 に答える