Jquery 如何获取是否发生了恢复?

Jquery 如何获取是否发生了恢复?,jquery,jquery-ui,Jquery,Jquery Ui,我正在使用jQueryUI的可拖动和可拖放特性。 我需要确定是否发生了回复。 是否有可能捕获是否发生了“恢复”?感觉有点不对劲,但可能的解决方案如下: $("#draggable").draggable({ revert: function(){if($('#droppable').hasClass('logRevert') == true){ $('#droppable').removeClass('logRevert'); return false;

我正在使用jQueryUI的可拖动和可拖放特性。 我需要确定是否发生了回复。

是否有可能捕获是否发生了“恢复”?

感觉有点不对劲,但可能的解决方案如下:

    $("#draggable").draggable({ revert: function(){if($('#droppable').hasClass('logRevert') == true){
            $('#droppable').removeClass('logRevert'); return false; 
    } 
else{
/*Your Code here*/
return true;
} 
});
revert接受一个函数,因此无论出于何种原因,如果不接受draggable,我们只返回true

现在要实现这一点,我们必须在可接受的draggable位于dropable之上时添加.logRevert类。在它删除并且没有恢复之后,它将删除helper类.logRevert。现在,您可以始终向返回中添加代码

$("#droppable").droppable({
    accept: '#draggable',
    over: function(event, ui){$(this).addClass('logRevert');},
    drop: function(event, ui) {
        $(this).addClass('ui-state-highlight').find('p').html('Dropped!');
    }
});
来源于Nick Craver对以下问题的回答: