javascript - 如何统计点击的节点数?

标签 javascript jquery d3.js

我在空闲时间使用 d3 Force 布局。 此时,我创建了一个代码,我可以在其中单击节点,然后弹出一个工具提示并返回单击的节点的名称。 我的下一步是,我想让工具提示向我显示一个计数器,它返回工具提示中的计数,即单击了多少个节点。 但目前我不知道如何解决这个问题。希望你们中的某个人可以帮助我。非常感谢!

var node = svg.selectAll(".node")
              .data(nodes)
              .enter().append("g")
              .attr("class", "node")
              .call(force.drag);

node.append("circle")
    .attr("r", 19)
    .style("fill", "grey") 
    .on("click", showTooltip);        

function showTooltip(d)
{
  tooltip.text(d.name);
  tooltip.style("visibility", "visible"); 
}

var tooltip = d3.select("body")
                .append("div") 
                .attr("class", "tooltip")
                .style("position", "absolute")
                .style("z-index", "10")
                .style("visibility", "hidden");

最佳答案

您只需要一个变量,每次单击节点时该变量都会递增。

var clickCount = 0;

function showTooltip(d) {
  clickCount++;
  tooltip.text(clickCount);
  tooltip.style("visibility", "visible");
}

关于javascript - 如何统计点击的节点数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40822537/

相关文章:

javascript - 使用 redux thunk 时操作必须是普通对象

javascript - 非构造函数中直接super调用是非法的,改用super ."constructor"()

javascript - Sails.js 连接到 Cloud mongoDb Atlas

javascript - 使用 JavaScript 命名空间有什么危险吗?

javascript - 移除悬停动画

d3.js - d3 单击事件因缩放和平移层而停止

javascript - 如何使用 D3 库制作响应式 Canvas 动画

javascript - 在 VS2015 中执行生成后的 Gulp.js 任务

javascript - 使用 jquery 创建基于 JSON 的动态 SelectBox

javascript - d3js 奇怪的日期和数据处理