我正在尝试在最后一个内部泡泡上进行onclick事件。我遇到了2个问题,第一个是如果我删除这一行:
.label, .node--root, .node--leaf { pointer-events: none; }
它放大我点击的最后一个内部气泡,但文字消失了。如何向最后一个内在孩子添加onclick事件? 继承人我的jsfiddle:https://jsfiddle.net/23yaf9qd/
我尝试使用jquery,但它不起作用
$("circle[id^='circle']").click(function () {
//my rest of code
});
答案 0 :(得分:0)
如果要在放大内部节点时显示内部节点的名称,可以在数据中添加字段showText
,如下所示:
transition.selectAll("text")
.each(function(d) {d.showText=( d.parent === focus || ( d === focus && !d.children))})
然后您可以使用d.showText
代替测试父级(请参阅https://jsfiddle.net/epkrgdok/)
对于您的其他问题:以下行应该有效
d3.selectAll(".node--leaf").on("click",function(){alert("you've just clicked a leaf")});
然而,它似乎是你的jsfiddle中的一个问题(它确实向节点注册了一个事件,但是它触发了一个“raes未定义”错误,你之前就已经这样了,我对没有任何线索该