我有一组可拖动的元素。如何删除可拖动功能?
$('.draggable').draggable('disable')
在我的情况下不是一个选项
$('.draggable').draggable('destroy')
返回Uncaught TypeError: Cannot read property 'options' of undefined
答案 0 :(得分:12)
来自jQuery UI API:
<强>破坏()强>
完全删除可拖动功能。这将使元素返回到pre-init状态。
This method does not accept any arguments.
代码示例:
调用destroy方法:
$( ".selector" ).draggable( "destroy" );
修改强>
因为这似乎对你不起作用 - 这是一个在jQuery论坛上被看到的问题 - 这是一个建议的修复:
ui.draggable.draggable("option", "revert", false);
答案 1 :(得分:0)
您需要在销毁之前进行检查
if ($el.data('ui-draggable')) { // error to call destroy if not there
$el.draggable('destroy');
}
在jQuery> 2.1.0中,它是“用户可拖动的”