私はGPSベースの製品に取り組んでおり、正確にやりたいことは次のとおりです。
1)div(ドロップ可能)にアイテムをドラッグします
2) ドロップ アクションで、同じ div にマップを表示し、それに応じて情報をマークします。
3) その特定の div では、ドロップ可能な機能をオフにする必要があります。
問題: ドロップ可能な機能の無効化を除いて、すべて正常に動作しています。ドロップ可能を無効にしようとしましたが、実際には div コンテナーが無効になっており、MAP がグレー表示されているため、まったく受け入れられません。
助けてください.. :( これが私のコードです:
HTML:
<table width="100%">
<tr>
<td>
<div style="width: 30%; float: left; height: 500px;">
<span id="bjcb" class="draggable" style="color:Red">What up</span>
</div>
<div style="width: 70%; float: left; height: 500px;">
<div style="width: 49.5%; height: 50%; float: left;" class="droppable" id="one"></div>
<div style="width: 50%; height: 50%; float: right;" class="droppable" id="two"></div>
<div style="width: 49.5%; height: 50%; float: left;" class="droppable" id="three"></div>
<div style="width: 50%; height: 50%; float: right;" class="droppable" id="four"></div>
</div>
</td>
</tr>
</table>
JS:
$(function () {
$(".draggable").draggable({
revert: true
});
$(".droppable").droppable({
drop: function (event, ui) {
alert('dropped');
$(this).addClass("ui-state-highlight");
$(this).html(ui.draggable.prop('id'));
var mapOptions = {
center: new google.maps.LatLng(-34.397, 150.644),
zoom: 8,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var id = $(this).prop('id');
var map = new google.maps.Map(document.getElementById(id), mapOptions);
$(this).droppable("option", "disabled", true);
}
});
});
CSS:
.droppable
{
background-color: Gray;
border: solid 1px Red;
}
.draggable
{
background-color: Transparent;
}
フィドル: