Javascript 为什么在jQuery中切换draggability的正确方法是?

Javascript 为什么在jQuery中切换draggability的正确方法是?,javascript,jquery,Javascript,Jquery,下面是我如何在“可拖动”和“不可拖动”之间切换。注意self.J保存正确的jQuery对象 可拖动: self.J.logo_arcmarks.draggable('enable'); self.J.logo_arcmarks.draggable('disable'); self.J.logo_arcmarks.draggable('destroy'); // removes CSS from element 不可拖动: self.J.logo_arcmarks.draggable('ena

下面是我如何在“可拖动”和“不可拖动”之间切换。注意
self.J
保存正确的jQuery对象

可拖动:

self.J.logo_arcmarks.draggable('enable');
self.J.logo_arcmarks.draggable('disable');
self.J.logo_arcmarks.draggable('destroy'); // removes CSS from element
不可拖动:

self.J.logo_arcmarks.draggable('enable');
self.J.logo_arcmarks.draggable('disable');
self.J.logo_arcmarks.draggable('destroy'); // removes CSS from element
我得到这个错误:

[08:57:29.422]错误:无法在之前调用draggable上的方法 初始化;试图调用方法“enable”@

单击徽标以启用和禁用拖动功能,您将在控制台中看到错误

参考文献


您不必编写任何代码来启动或停止拖动。 只要在对象上调用.draggable(),就可以拖动它,然后放开它

看看我举的这个非常基本的例子:


首先,您必须初始化可拖动对象

self.J.logo_arcmarks.draggable();

您不必传递参数来启用可拖动对象,除非您之前已经初始化并禁用了一个对象

但我想让它也不再是可拖动的。这会初始化“可拖动”库。使用“enable”和“disable”调用它假定您以前初始化过它,因此jQuery UI Draggable抛出错误,但是没有解释为什么其他8个左右的元素不需要这个修复。如果你需要初始化它但不启用它,那么你可以使用这个:Sidenote:我们绝对没有明智的方法来调试在arcjs中运行的这个东西。@Sergui-你是什么意思?先生,你是不是朝我咬拇指?