2013-05-31 35 views
0

我正在为jsPlumb中的连接创建自定义覆盖。jsPlumb连接自定义覆盖 - 端点不移动

connectorOverlays: [ 
     ["Custom", { 
      create: function(component) { 
       return connectionNode(); 
      }, 
      location:0.5, 
      id:"customOverlay" 
     }] 
    ] 

connectionNode()创建一个带有选择列表的div。 divs本身应该是可连接的,即,我想连接两个不同连接器的标签。

var overlay_div = $(connection.overlays[0].canvas); 
    jsPlumb.addEndpoint(overlay_div, { anchor:[ "Perimeter", { shape:"Rectangle"}] }, relationEndpoint); 

Enpoint上的连接器覆盖被定义为这样:

var relationEndpoint = { 
     endpoint:["Dot", {radius:4} ], 
     anchor: ["BottomRight","TopLeft", "TopRight", "BottomLeft"], 
     paintStyle:{ fillStyle:"#ff33333", opacity:0.5 }, 
     isSource:true, 
     connectorStyle:{ strokeStyle:"#ff33333", lineWidth:3 }, 
     connector : "Flowchart", 
     isTarget:true, 
     dropOptions : { 
     tolerance:"touch", 
     hoverClass:"dropHover", 
     activeClass:"dragActive" 
    }, 
     beforeDetach:function(conn) { 
      return confirm("Detach connection?"); 
     } 
    }; 

当我现在移动任何由与自定义覆盖所述连接件连接的原始节点,端点不沿移动与标签,但保持静态它创建。我可以以某种方式以编程方式触发其动作,还是缺少一些配置选项?

+0

嗨,我试图完成你在这里做什么,并有语法问题。你能提供见解吗? – jallen

回答

0

我也有这个问题。我可以修复它

instance.draggable(jsPlumb.getSelector(".flowchart-demo .window"), { grid: [5, 5] }); 

其中".flowchart-demo .window"是div的类。

所示的例子是从jplumb页的例子......在我的项目这条线保持

instance.draggable(jsPlumb.getSelector(".flowchart-demo .clsExecutando"), { grid: [5, 5] }); 

我希望这个信息可以帮助你。