Javascript 是否有用于';仅在鼠标结束时运行,但在鼠标未结束时停止';

Javascript 是否有用于';仅在鼠标结束时运行,但在鼠标未结束时停止';,javascript,d3.js,Javascript,D3.js,我知道onmouseover,但我在页面上有一个圆圈,当鼠标悬停在上面时,它会亮起。但当鼠标离开它时,它会一直亮着,直到它再次悬停,当它再次关闭时。真让人恼火。是否只有在悬停时才触发一条指令?以下是代码,但大部分与此无关 var node = svg.selectAll(".node") .data(graph.nodes) .enter().append("circle") .attr("class", "node") .attr("r", fu

我知道onmouseover,但我在页面上有一个圆圈,当鼠标悬停在上面时,它会亮起。但当鼠标离开它时,它会一直亮着,直到它再次悬停,当它再次关闭时。真让人恼火。是否只有在悬停时才触发一条指令?以下是代码,但大部分与此无关

var node = svg.selectAll(".node")
      .data(graph.nodes)
      .enter().append("circle")
      .attr("class", "node")
      .attr("r", function(d) { return d.group * 3; })
      .style("fill", function(d) { return color(d.group); })
      .call(force.drag)
      .on('mouseover', connectedNodes)
      .on("click",  function(d) { getprofile(d); });

您正在寻找
mouseleave
。这里是它的D3演示:

您正在寻找
mouseleave
。这里是它的D3演示:

您可以使用
.on('mouseout',function(){})
停止在鼠标上方启动的函数。

您可以使用
.on('mouseout',function(){})
停止鼠标悬停时启动的功能。

您需要定义鼠标悬停事件。 因此,您的代码如下所示:

    var node = svg.selectAll(".node")
          .data(graph.nodes)
          .enter().append("circle")
          .attr("class", "node")
          .attr("r", function(d) { return d.group * 3; })
          .style("fill", function(d) { return color(d.group); })
          .call(force.drag)
          .on('mouseover', connectedNodes)
          .on('mouseout', doSomethingCallback)
          .on("click",  function(d) { getprofile(d); });

function doSomethingCallback(){
  fill your circle with the original color
}

您需要定义鼠标悬停事件。 因此,您的代码如下所示:

    var node = svg.selectAll(".node")
          .data(graph.nodes)
          .enter().append("circle")
          .attr("class", "node")
          .attr("r", function(d) { return d.group * 3; })
          .style("fill", function(d) { return color(d.group); })
          .call(force.drag)
          .on('mouseover', connectedNodes)
          .on('mouseout', doSomethingCallback)
          .on("click",  function(d) { getprofile(d); });

function doSomethingCallback(){
  fill your circle with the original color
}

难道不也有onmouseout活动吗?除了打开onmouseout的onmouseover之外,可能还有一个关闭onmouseout的侦听器?有一个事件
onmouseout
。也许这就是你想要的。难道不也有onmouseout活动吗?除了打开onmouseout的onmouseover之外,可能还有一个关闭onmouseout的侦听器?有一个事件
onmouseout
。也许这就是你想要的。可爱。谢谢那真是太好了。谢谢那就对了