在Javascript中检索元素的连接信息

问题描述:

我试图按照以下方式获取已放置在画布上的jsPlumb元素的连接信息。但是,它提到源ID和目标ID是未定义的。在Javascript中检索元素的连接信息

JS功能

function getConnectionDetails(element) 
{ 
    var s,t; 
    var elemId = element.id; 
    elemId = elemId.charAt(0); 
    var inConId = elemId + "-in"; 
    alert("element: "+elemId+"\nConnection in source details: "+ inConId); 
    var outConId = elemId + "-out"; 

    jsPlumb.bind("jsPlumbConnection", function(element) { 
     s=inConId.sourceId; 
     t=inConId.targetId; 
    }); 
    alert("Source ID of connection: "+ s+ "\nTarget ID of connection: "+t); 

} 

“elemId”获取连接器ID和应该找回连接到它的连接。在这种情况下,一个连接器将只有一个其他连接。

'inConId'将保留左侧锚点/连接器的ID,'outConId'将保留右侧锚点/连接器的ID,并且需要确定其他元素的哪些连接器是这2个(inCon & outCon )连接到。

明白了。

function getConnectionDetails(element) 
    { 
     var clickedId = element.id; 
     clickedId = clickedId.charAt(0); 
     var from = clickedId+"-out"; 
     var from1 = clickedId; 
     clickedId = clickedId+"-in"; 
     var con=jsPlumb.getAllConnections(); 
     var list=[]; 
     for(var i=0;i<con.length;i++) 
     { 
      if(con[i].targetId==clickedId) 
      { 
       list[i] = new Array(2); 
       list[i][0] = con[i].sourceId; 
       fromStreamId =list[i][0]; 
       list[i][1] = con[i].targetId; 
      } 

      if(con[i].sourceId==from || con[i].sourceId==from1) 
      { 
       list[i] = new Array(2); 
       list[i][0] = con[i].sourceId; 
       list[i][1] = con[i].targetId; 
       intoStreamId =list[i][1]; 
      } 
     } 
     fromStreamId = fromStreamId.charAt(0); 
     getFromStreamName(fromStreamId); 
     intoStreamId = intoStreamId.charAt(0); 

    }