jQuery的可拖动的启用和禁用(jquery draggable enable and disab

2019-07-04 06:05发布

香港专业教育学院尝试新鲜事物要做到这一点,但总是得到同样的错误

$(".tooltip").draggable('disable');

错误:不能调用方法拖动在初始化之前; 试图调用方法“禁用”

之前的初始化? 所以我不能将它的实际被上拖动之前删除的选项? 香港专业教育学院用可弃尝试为好,不能似乎让他们禁用没有得到这个错误启用。

编辑:我发现我有是没有拖动(这是有道理的,当你在错误)类的元素。 现在我只需要找到一种方法,所以它禁用所有的拖拽元素,而不引发错误:)

Answer 1:

试试这个:

$(".tooltip").draggable({ disabled: true });

这初始化处于禁用状态可拖动。 然后,您可以使用

$(".tooltip").draggable("enable");

以后当你希望允许拖动。



Answer 2:

我能够重新创建的场景在此的jsfiddle:

http://jsfiddle.net/dboots/NDZKY/

这是使用

$('.draggable').draggable('disable');

$('.draggable').draggable('enable');

有什么不同,你是不能做? 看起来你有相同的语法。



Answer 3:

看看文档http://api.jqueryui.com/draggable/

这里一个例子:

http://jqueryui.com/draggable/

有你“收录” jQuery的ui.js库?

试试这个小提琴! http://jsfiddle.net/3Lrg2/23/



Answer 4:

使用一个键 启用禁用

$("#container").draggable({disabled:false});
$("#container").draggable({disabled:true});

简单的例子下面给出:

<div id = "container"></div>
<button id = "control"></button>
<script>
  $(document).ready(function()
    {
       $("#control").click(function()
          {
            if($("#control").hasClass("active")
              {
                $("container").draggable({disabled:true});
                $("control").removeAttr("class","active");   
              }
            else
              {
                $("container").draggable({disabled:false});
                $("control").attr("class","active");
              }
          });
    });
</script> 


Answer 5:

尝试使用.unbind(“ondrag当”)从您的元素中删除该事件。

对不起,我觉得应该是$(“工具提示”)。取消绑定(“拖动”)事件的名称肯定不是100%。



文章来源: jquery draggable enable and disable