我正在使用拖动和放大器从jQuery中删除以在webbrowser中执行游戏。用户需要在网格上以任何方式拖放元素,但只有一个元素可以放在可丢弃区域上。我的想法是存储在布尔数组上特定div的可能性/不可靠性。这看起来很棒的解决方案,但我不知道如何触发可以在droppable元素上启用droppable的事件,当我删除已经放入这种droppable的可拖动元素时。
主要问题是如何使用适当的div将数值插入数组,而draggable元素是从特定的droppable释放的。什么样的方法,代码可以帮助我实现这种效果?
这是fiddle
var droppableAbility = [
[ true, true,true,],
[ true, true,true,],
[ true, true,true,]
];
$(function() {
$( ".draggable" ).draggable({ revert: 'invalid' });
$( ".droppable" ).droppable({
accept: function () {
var droppableId = $(this).attr("id");
var x =droppableId.charAt(0);
var y = droppableId.charAt(1);
return droppableAbility[x][y];
},
drop: function( event, ui ) {
$( this )
.addClass( "dropped" );
var droppableId = $(this).attr("id");
var x =droppableId.charAt(0);
var y = droppableId.charAt(1);
droppableAbility[x][y] = false;
}
});