JQuery UI Draggable-как узнать, что элемент draggable инициализирован?


Моя логика

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

Я много искал и не мог найти способ реализовать эту логику, какие-то идеи?

2 5

2 ответа:

Может быть, есть более простой способ, но docs говорят:

Перетаскиваемые элементы получают класс ui-draggable

Таким образом, вы могли бы сделать что-то вроде:

if(!$("#foo").hasClass("ui-draggable")) {
    ...
}

Итак, чтобы закончить это (непроверенное):

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

console.log($("#someElement").isDraggable());

Событие dragstart запускается при запуске перетаскивания. Подробнее в docs