当draggable-element超出droppable元素的“margin”时,如何实现触发“revert”。 jQuery的

时间:2011-11-17 09:50:45

标签: jquery draggable droppable

当元素$('。ship')超过其他$('。ship')元素或$('。ship')的“margin”时,我需要触发“revert”触发。它适用于“填充”和“边框”,但不适用于“边距”。我该怎么做呢?这是我的代码:

$('.ship').draggable({
    containment : "#content",
    snap : "#board table td",
    snapMode : "inner",
    revert : "invalid",
    opacity: 0.7,
    stack: '.ship',
});

$('.ship').droppable({
    drop: function(e, ui) {
        ui.draggable.draggable('option', 'revert', true);
    },
    tolerance: 'touch'
});

$('#board').droppable({
    drop: function(e, ui) {
        $(ui.draggable).css('margin', '3px');
        ui.draggable.draggable('option', 'revert', false);
    },
    tolerance: 'fit'
});

1 个答案:

答案 0 :(得分:0)

我没有直接答案,但是如果你找不到使用边距的方法,请在.ship附近包装一个容器,占用与当前边距相同的区域,并使该容器可以放置。