我有一个“ Canvas ”,我允许用户在其中添加可拖动的框并将它们与 jsPlumb 连接起来。我想让他们在某个时间点删除其中一个框。为了解决这个问题,我首先分离所有连接并从目标元素中删除端点,这工作正常
jsPlumb.detachAllConnections(targetBoxId);
jsPlumb.removeAllEndpoints(targetBoxId);
然后我删除实际的 DOM 元素:
$(targetEl).remove();
在这一点上,jsPlumb 开始吓坏了,不允许我再拖动剩余元素:
我可以不断调整框的大小并建立新的连接,但拖动元素不断失败并发出上述错误。
有什么我做错了吗?换句话说,在“可拖动”环境中是否有更合适的方法来删除 jsPlumb 元素?
最佳答案
您确实删除了连接和端点。但是在从 DOM 中 remove() 对象之前,您必须 jsPlumb.detach() 它:
jsPlumb.detachAllConnections(targetBoxId);
jsPlumb.removeAllEndpoints(targetBoxId);
jsPlumb.detach(targetBoxId); // <--
targetBoxId.remove()
关于javascript - jsPlumb:删除可拖动元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15147291/