0

アンカーとアイコンを含む div があります。

<a id="createWave_addStation"><img class="createWaveToolBarImg" 
src="img/mapIcons/ico_station.png"></a>

これをドラッグして、OpenLayers マップにドロップします。img はデフォルトでドラッグ可能になっているため、ここでは設定しません。アイコンをドラッグすると、img がドラッグされないため、カーソルのみが表示されます。ドラッグしたもののアイコンを表示するにはどうすればよいですか。これは私のコードですが、うまくいきません。

$('#createWave_addStation').bind("dragstart", function(ev){
        ev.preventDefault();
        console.log("drag start");
        enableGetMouseupEvent();
        var dragIcon = document.createElement('img');
        dragIcon.src = ICO_STATION;
        dragIcon.width = 100;
        ev.originalEvent.dataTransfer.setDragImg(dragIcon, -10, -10);
    });

コード自体は機能しますが、ドラッグ中に画像が表示されません

4

1 に答える 1

0

Chromeで機能するものを一緒にハッキングしましたが、他のブラウザではテストしていません。デモはこのフィドルにあります。

2つのことが重要です。

  • 任意の要素が設定されている必要がありますdraggable="true"
  • ドラッグ中に表示する画像はプリロードされている必要があります。そうしないと、最初は表示されません。
于 2012-12-29T14:21:51.330 に答える