Javascript d3.js-缩放错误(iOS)

Javascript d3.js-缩放错误(iOS),javascript,d3.js,Javascript,D3.js,我正在做一个项目,其中包括一个可平移和可缩放的d3.js图。我的工作基本正常,但我发现了一个问题: 在iPad上测试时,我发现一些手势会导致d3出错- TypeError:“undefined”在最新的d3.js(不是.min版本)第1264行(似乎是函数moved()的开头)中不是对象 它似乎发生在缩放事件部分在图形外部开始时-例如,一个手指在图形上,一个手指在外部,然后缩放。可能需要在不同的地方尝试几次;我无法找到触发它的确切原因 我已经复制了这个项目,并将其简化为一个基本示例,该示例可在-

我正在做一个项目,其中包括一个可平移和可缩放的d3.js图。我的工作基本正常,但我发现了一个问题:

在iPad上测试时,我发现一些手势会导致d3出错-
TypeError:“undefined”在最新的d3.js(不是.min版本)第1264行(似乎是
函数moved()的开头)中不是对象

它似乎发生在缩放事件部分在图形外部开始时-例如,一个手指在图形上,一个手指在外部,然后缩放。可能需要在不同的地方尝试几次;我无法找到触发它的确切原因

我已经复制了这个项目,并将其简化为一个基本示例,该示例可在-,不再可用-

安装了Waterbug,因此在iPad(可能还有其他支持旋转的设备)上测试时,向右旋转时会出现错误日志控制台

这看起来像d3中的bug,还是我的代码中的bug


更新 我已经将问题缩小到一个触摸事件,它从图形内部开始,然后延伸到外部。因此,如果您用一个手指平移图形,然后决定缩放,但将第二个手指放在图形外部,则会发生错误。如果第二个手指也在图形内部,则没有问题


更新2 看起来在的例子也有相同的isuse-请参阅-不再可用-使用提供的代码,加上我已经包括了Waterbug,所以向右旋转设备(从垂直方向)将显示控制台


问题似乎与
moved()有关
函数-v3.2.8中的第1264行和v3.3.2中的第1387行。

结果表明这是d3中的一个bug-请参阅了解详细信息

您是否尝试将缩放事件附加到
正文
?@Larskothoff,我的代码基于此。似乎示例也受到了影响,因为使用它提供的代码并添加Waterbug以查看日志消息,同样的事情也受到了影响发生了。嘿@Josh,你能告诉我你是如何将d3js集成到你的iPad应用程序中的吗?我也需要这样做。@Rakesh这是一个cordova应用程序(在网络视图中运行)。从你的帖子判断,你是一个iOS原生开发人员,所以我真的不能帮你