4
Я пытаюсь поместить linkText для ссылки в древовидной структуре d3js, но это не wlrking, созданный проект jsfiddle here. Кто-нибудь может сообщить мне, почему linkText не подходит.LinkText не работает в древовидной структуре d3js
var link = svg.selectAll(".link")
.data(links, function (d) {
return d.target.id;
});
link.enter().insert("path", "g")
.attr("class", "link")
.attr("d", function (d) {
var o = {
x : source.x0,
y : source.y0
};
return diagonal({
source : o,
target : o
});
});
link.transition().duration(duration)
.style("stroke", function (d) {
return "#99FFCC";
})
.attr("d", diagonal);
link.append("text")
.attr("font-family", "Arial, Helvetica, sans-serif")
.attr("fill", "Black")
.style("font", "normal 12px Arial").attr("transform", function(d) {
return "translate(" +
(d.target.y - 50) + "," +
(d.target.x - 10) + ")";
}).attr("text-anchor", "middle").text(function (d) {
alert(d.target.label);
return d.target.label;
});
Для ссылки на полный рабочий код - LinkText подходит отлично, но при щелчке родительского узла, вызовы выхода из узла на дочерний узел выходят из узла и nodeText, но linkText остается там. LinkText также должен выйти из щелчка родительского узла. – RCS
Вы можете сделать что-то вроде выбора всех с классом, чтобы удалить всю ссылку _label..svg.selectAll (". Line-label"). Remove(); _ Обновленный код здесь: https://jsfiddle.net/cyril123/451ko25p/8/ – Cyril
Удаление метки ссылки отлично работает только в 1-й метке дерева. Даже при щелчке дочернего узла на 1-й метке все linkText удаляются. При двойном щелчке дочернего узла также на 1-й метке, все linkText удаляется из ссылки другого узла. Только ссылка на клики для своего дочернего узла имеет linkText. Вот проект jsfiddle, вы можете видеть - https://jsfiddle.net/ram140488/s17bfwrh/2/ – RCS