Я использую Jsplumb для разработки рабочих процессов. Некоторые рабочие процессы могут быть чрезвычайно сложными, а наличие нескольких соединителей может затруднить определение того, какой соединитель связан с какой задачей. Чтобы исправить это/показать руководство, я хотел бы скрыть все соединители при нажатии на соединение и показать только соединение, на которое нажали.
Мой код для добавления соединителей выглядит так:
//Добавить задачу function addTask(id) {
$(' <div class="window task node Btn Color-Light BR-3 BS-20 Engrave" id="' + id + '"' +
//Append to Base HTML
' data-nodetype="task" style="left:530px; top:530px; width:230px;">').appendTo('#' + htmlBase).html($(("#WfTask0"))[0].innerHTML);
var taskSourceConnectorEndpoint = {
isSource: true,
isTarget: false,
maxConnections: 1,
anchor: [0.5, 1, 0, 1, 20, 0, "task_end endpoint"],
};
//Failure Anchor
var leftDecisionConnectorEndpoint = {
isSource: true,
isTarget: false,
maxConnections: -1,
anchor: [0, 0.5, 0, 1, 18, 72, "left_dec_start startpoint"],
paintStyle: { fillStyle: 'transparent', lineWidth: 5, },
endpoint: ["Dot", { width: 25, height: 25 }],
endpointStyle: { fillStyle: 'rgb(185,61,255)' },
connector: ["Flowchart", { stub: [40, 60], gap: 10, cornerRadius: 5, alwaysRespectStubs: true }],
cornerRadius:50,
connectorStyle: {
lineWidth: 3,
strokeStyle: "#B93DFF"
},
overlays: [
[
"Arrow", {
width: 10,
length: 10,
foldback: 1,
location: 1,
id: "arrow"
}
]
]
};
//Success Anchor
var rightDecisionConnectorEndpoint = {
isSource: true,
isTarget: false,
maxConnections: -1,
anchor: [1, 0.5, 1, 0, -16, 75, "right_dec_start startpoint"],
paintStyle: { fillStyle: 'transparent', lineWidth: 5, },
endpoint: ["Dot", { width: 25, height: 25 }],
endpointStyle: {},
connector: ["Flowchart", { stub: [40, 60], gap: 10, cornerRadius: 5, alwaysRespectStubs: true }],
//cssClass: "aRedEndpoint",
connectorStyle: {
lineWidth: 3,
strokeStyle: "lightgreen"
},
overlays: [
[
"Arrow", {
width: 10,
length: 10,
foldback: 1,
location: 1,
id: "arrow"
}
]
]
};
var taskTargetConnectorEndpoint = {
isSource: false,
isTarget: true,
maxConnections: -1,
anchor: [0.5, 0, 0, -1, 6.5, 11.7, "task_end endpoint "],
paintStyle: { fillStyle: 'transparent' },
endpoint: ["Rectangle", { width: 25, height: 25 }]
};
//Add Anchors to the Task
jsPlumb.addEndpoint(
$('#' + id),
rightDecisionConnectorEndpoint
);
jsPlumb.addEndpoint(
$('#' + id),
leftDecisionConnectorEndpoint
);
jsPlumb.addEndpoint(
$('#' + id),
taskTargetConnectorEndpoint
);
jsPlumb.draggable($('#' + id));
//Reposition Elements
posY = +posY + +spacer;
repositionElement(id, posX, posY);
return id;
}
Я могу связать событие щелчка и получить соединение, но в этот момент я теряюсь.
jsPlumb.bind('click', function (connection, e) {
// $('._jsPlumb_connector').addClass('clsActiveConnector');
});
Этот вопрос, возможно, связан с jsPlumb: Как выбрать конкретный соединитель< /а>
Тем не менее, я думаю, что в этом случае я пытаюсь выбрать ситуацию обратного типа...
Любое предложение очень приветствуется...
Спасибо