更新:这是小提琴:http://jsfiddle.net/janessaallen/c3b514wf/7/
试图找出以下为什么不能获得我的jsplumb连接。我有一个单独的流程图保存javascript文件,其中包含以下保存功能:
function saveFlowchart() {
var nodes = []
$(".window").each(function (idx, elem) {
var $elem = $(elem);
var endpoints = jsPlumb.getEndpoints($elem.attr('id'));
nodes.push({
id: $elem.attr('id'),
text: $elem.find($(".beneficiary")).text(),
positionX: parseInt($elem.css("left"), 10),
positionY: parseInt($elem.css("top"), 10)
});
});
var connections = [];
$.each(jsPlumb.getConnections(), function (idx, connection) {
connections.push({
connectionId: connection.id,
sourceId: connection.sourceId,
targetId: connection.targetId,
anchors: $.map(connection.endpoints, function (endpoint) {
return [[endpoint.anchor.x,
endpoint.anchor.y,
endpoint.anchor.orientation[0],
endpoint.anchor.orientation[1],
endpoint.anchor.offsets[0],
endpoint.anchor.offsets[1]]];
})
});
});
var flowChart = {};
flowChart.nodes = nodes;
flowChart.connections = connections;
}
端点工作正常并被推送到数组,但jsPlumb.getConnections没有发现任何连接。
答案 0 :(得分:0)
创建jsPlumb
的实例来创建connections / makeSources / makeTargets,而不是使用全局变量jsPlumb
本身。
如果使用实例创建连接,则必须查询而不是jsPlumb
全局变量。
我已经更新了小提琴以保存对实例&的引用使用instance to getAllConnections.