jsPlumb:避免div之间的多个连接器

时间:2013-11-30 21:10:53

标签: jsplumb

专家,

我正在使用jsPlumb连接具有多个端点的div。我试图阻止相同的两个div之间的多个连接器。例如,如果我有div,A,B,C,A和B之间的连接器,A和C都可以,但A和B之间没有两个连接器(使用不同的端点)。

有谁知道怎么做?

谢谢!

1 个答案:

答案 0 :(得分:1)

这取决于你的很多代码,但你可以这样做:

var exampleEndpoint = {
    reattach:true,
    scope:"yourScope",
    isSource: true,
    isTarget:true,
    beforeDrop:function(params) { return !checkExistingLinks(params.sourceId,params.targetId); }
};

function checkExistingLinks(sourceId, targetId) {
    var flag = false;

    jsPlumb.select({source: sourceId}).each(function(connection) {
        if(connection.targetId === targetId) {
            flag = true;
        }
    });

    return flag;
}

也就是说,您需要识别连接尝试,然后验证所涉及的元素是否已连接。 jsPlumb.select()为您返回此连接的列表(或映射)。