我希望有人可以帮我解决问题。现在我正在做jquery拖放。 我的问题是,当用户将图像拖放到放置区域时。那个下降区域就像树木图片。所以下降区域应该像树图片。但现在我可以放在矩形区域。我不知道如何解决这个问题。任何人都可以帮助我。
我使用以下编码。
$j("#draggable").draggable({
revert: function (dropped) {
var $jdraggable = $j(this),
hasBeenDroppedBefore = $jdraggable.data('hasBeenDropped'),
wasJustDropped = dropped && dropped[0].id == "tree";
if (wasJustDropped) {
//centering with css
centerPopup();
//load popup
loadsharePopup();
return false;
} else {
if (hasBeenDroppedBefore) {
return true;
} else {
return true;
}
}
}
});
$j("#tree").droppable({
activeClass: 'ui-state-hover',
hoverClass: 'ui-state-active',
drop: function (event, ui) {
//var Stoppos = $j(this).position();
//alert("STOP: \nLeft: "+ Stoppos.left + "\nTop: " + Stoppos.top);
var newPosX = ui.offset.left - $j(this).offset().left;
var newPosY = ui.offset.top - $j(this).offset().top;
//alert($j(this).offset().left);
$j("#txtPosX").val(newPosX);
$j("#txtPosY").val(newPosY);
//alert("STOP: \nLeft: "+ newPosX + "\nTop: " + newPosY);
$j(this).addClass('ui-state-highlight').find('p').html('Dropped!');
$j(ui.draggable).data('hasBeenDropped', true);
}
});
});
<div id="tree">
<div id="draggable"></div>
</div>
答案 0 :(得分:0)
如果我正确理解了您的问题,那么您可能希望使用 area 标记来创建树的形状,其中将删除可拖动元素。
区域的信息可在此处找到:http://www.quackit.com/html/tutorial/html_image_maps.cfm
示例(女巫简单的坐标):
<map id ="tree">
<area shape ="poly" coords ="55,55,120,80,90,80,90,100,70,100,20,80,55,55"
href ="LINK"
alt="Mount Cook" />
</map>