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

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

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

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

谢谢! 约翰。

grid选项文档说:

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

因此看起来grid设计只能用于某种帮助程序。 实际上,如果你使用helper: "clone"东西是好的:帮助器返回原始实例的位置附近

是的,这看起来像是UI中的一个错误。 但是有一个解决方法: 使用帮助器进行拖动 :

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

这个解决方法引入了其他奇怪的错误:在droppable区域帮助器上的有效拖放被破坏并且原始实例存在于其中(您可以在小提琴处看到它)。

这个错误以某种方式通过connectToSortable选项解决了draggable问题。 也许有可能在你的情况下解决bug。

此外,我怀疑整个混乱是由于这一部分代码可拖动。