0

http://jsfiddle.net/taoist/fsmX7/

在上面的代码示例中,我希望 .textDivContainer 的默认状态不可拖动。然后,当用户单击绿色按钮时,我希望编辑器关闭(它确实如此)并且我希望 .textDivContainer可以拖动。然后,一旦用户再次单击该按钮,编辑器将打开,并且 div 将不可拖动,因此创建了一个切换开关。就目前而言,这是行不通的。

但是,我确实使用默认的 JQuery 可拖动方法使其在没有JsPlumb 的情况下工作。这可以在下面看到。

下面的 Non-JSPlumb JSfiddle 中的 Draggable 方法通过使用名为“enable”和“disable”的 2 个不同的属性值来完成此操作。这些似乎不适用于 JSPlumb 我试图将这两个属性与 JSplumb 一起使用,但无济于事。它们可能会起作用,但如果是这样,我不知道如何实现它们。

http://jsfiddle.net/KrdEU/5/

下面是迄今为止的最终 JSFiddle,它是一个半工作的 JSplumb 版本。这使用类交换来实现可拖动功能。它默认为不可拖动,当单击绿色按钮时,它变为可拖动的。但是,当第二次单击绿色按钮时,它不会停止可拖动。

http://jsfiddle.net/taoist/fsmX7/1/

$(document).ready(function() {

jsPlumb.bind("ready", function() {


var dragToggle = null ;
    $(".textButton1"). mousedown(function(){

        if (dragToggle===null){
        dragToggle = '.textDivContainer1';  

        }

        else if (dragToggle === '.textDivContainer1'){
        dragToggle=null;
        }

        console.log(dragToggle);


        jsPlumb.draggable($(dragToggle), { snap: true});


        });

    });

});
4

1 回答 1

0

回答:

使用setDraggable(el, draggable)

http://jsplumbtoolkit.com/apidocs/files/jsPlumb-1.4.1-apidoc.html#jsPlumb.setDraggable(el,draggable)

于 2013-06-08T04:29:08.517 回答