使用网格恢复'无效'不会返回到jQuery UI Draggable的起始位置

Joh*_*unt 5 jquery jquery-ui droppable draggable

简而言之,如果您使用draggable与网格并设置revert:'无效'可拖动项目,它们不会返回到您开始拖动它们的完全相同的位置.他们回到你开始拖动它们的地方附近......非常奇怪.

这可能是UI中的一个错误.如果是这样,有人知道是否有解决方法吗?

示例:http: //jsfiddle.net/n2AUv/11/

谢谢!约翰.

yko*_*yko 1

grid选项文档说:

将拖动助手捕捉到网格,每个 x 和 y 像素。

所以它看起来像是grid被设计成只能与某种助手一起使用的。真的,如果你使用helper: "clone"东西是好的:助手返回原始实例的位置附近并且

是的,这看起来像是用户界面中的一个错误。但有一个解决方法:使用 helper 进行拖动

$(".dragme").draggable({
    revert: true,
    helper: "clone",
    grid: [50,50]
});
Run Code Online (Sandbox Code Playgroud)

此解决方法引入了其他奇怪的错误:在可放置区域助手上的有效放置被破坏并且原始实例存在于其位置之后(您可以在fiddle中看到它)。

这个错误以某种方式draggable通过connectToSortable选项解决了。也许也可以解决您的情况中的错误。

另外,我怀疑整个混乱是因为可拖动中的这段代码