JQuery UI Draggable - 如何知道一个元素是可拖动的初始化?

Edw*_*ard 5 javascript jquery jquery-ui

我的逻辑是

if( !this.draginited() ) // a drag-disabled element shouldn't get pass here, as it is inited
  this.draggable({...})
Run Code Online (Sandbox Code Playgroud)

我搜索了很多,找不到实现这个逻辑的方法,任何想法?

kar*_*m79 12

也许有一种更简单的方法,但文档说:

可拖动元素获得一个ui-draggable类

所以你可以这样做:

if(!$("#foo").hasClass("ui-draggable")) {
    ...
}
Run Code Online (Sandbox Code Playgroud)

所以包装它(未经测试):

$.fn.isDraggable = function() {
    return $(this).hasClass("ui-draggable");
}

console.log($("#someElement").isDraggable());
Run Code Online (Sandbox Code Playgroud)