我遇到了 jsPlumb 的 deleteEndpoint 函数的问题。
我想删除没有任何连接的端点。我希望它触发“连接”,但我认为那里可能存在一些问题。
但我将我的代码移动到“dblclick”,我看到了同样的问题。标记为删除的节点之一被删除,但系统中的每个端点都被冻结在原地 - 一旦被拖动,就与它的元素断开连接。我不确定是什么原因造成的:这是相关代码和一些屏幕截图......
jsPlumb.bind("dblclick", function(c) {
alert('starting...');
var endpoints_to_delete = new Array();
jsPlumb.selectEndpoints({source:c.sourceId}).each(function(endpoint) {
if( endpoint.connections.length <= 0 )
endpoints_to_delete.push(endpoint);
});
jsPlumb.selectEndpoints({source:c.targetId}).each(function(endpoint) {
if( endpoint.connections.length <= 0 )
endpoints_to_delete.push(endpoint);
});
alert(endpoints_to_delete.length); // 3
$.each(endpoints_to_delete, function(endpoint) {
jsPlumb.deleteEndpoint(endpoint);
});
});
这是我尝试删除端点之前的图表 - 所有端点仍然完好无损,它们附加的可拖动元素。
尝试删除端点后,每个端点都会与其元素断开连接......