d3 / chrome点击/缩放bug?

时间:2017-01-30 05:33:05

标签: javascript google-chrome d3.js

我认为d3或Chrome都存在错误,但很可能我做错了。

我有类似

的东西
d3.select("body").append("svg")
  [...]
  .on("click", function() { /* stuff */ })
  .call(zoom);

var zoom = d3.zoom()
  [...]
  .on("zoom", function() { /* stuff */ });

现在,这很好用,大部分时间。正在处理点击,正在处理缩放。

有时,Chrome会完全停止处理点击。我在那里放了一些调试console.log(),我发现正在调用"zoom"对象上的zoom事件而不是"click"事件。 svg对象。刷新不会解决问题。我实际上必须完全退出浏览器并重新启动,然后它会再次运行一段时间。

我没有注意到在Edge或Firefox中发生这种情况,但由于我的主浏览器是Chrome,我还没有真正在其他浏览器中测试它的时间足够长,以确定它是否发生在那里。

我确信我做错了,直到我检查了https://bl.ocks.org/mbostock/35964711079355050ff1上的示例,它似乎也有同样的问题,并且在重新启动浏览器后工作正常。

我正在使用d3 4.4.0而我使用的是Chrome 55.0.2883.87。

1 个答案:

答案 0 :(得分:0)

我知道这很古老,但是我遇到了这个问题并将其更新为d3 4.13.0,我相信现在可以解决此问题。