2013-03-21 4 views
9

У меня есть набор элементов, которые можно перетаскивать. Как удалить функцию перетаскивания?Уничтожить JQuery draggable

  1. $('.draggable').draggable('disable') не вариант в моем случае

  2. $('.draggable').draggable('destroy') возвращает Uncaught TypeError: Cannot read property 'options' of undefined

+0

Как создается перетаскиваемый файл –

+0

Оба действительны ... http: //api.jqueryui.com/draggable/#method-destroy и http://api.jqueryui.com/draggable/#method-disable – Dom

+0

Если вы хотите удалить функцию перетаскивания, почему отключить параметр? – cernunnos

ответ

10

С API JQuery UI:

уничтожить()

Полностью удаляет перетаскиваемые функции. Это вернет элемент обратно в исходное состояние.

This method does not accept any arguments. 

примеры кода:

Призовите уничтожить метод:

$(".selector").draggable("destroy"); 

EDIT

Как это, кажется, не работает должным образом для вас - и это проблема рассматривается все вокруг форумов jQuery - это предлагаемое исправление:

ui.draggable.draggable("option", "revert", false); 
+0

с моего вопроса: «$ ('. Draggable'). Draggable ('destroy') возвращает Uncaught TypeError: Не удается прочитать свойства 'options' undefined ' –

+1

Извините, что не прочитал его правильно перед публикацией , Я отредактировал свой ответ. – melancia

+0

'$ (". Selector "). Draggable.draggable (" option "," revert ", false);' не работает ... я чего-то не хватает? –