我正在查看 Mike Bostock 的D3.js粒子示例。
我已经在本地复制并粘贴了代码,根本没有更改任何内容。我正在使用 SimpleHTTPServer 运行代码,因此在本地运行不应该有任何安全问题。
每当我将鼠标悬停在正文上时,我都会在控制台中看到以下错误:
Uncaught TypeError: Object #<Object> has no method 'mouse'
有谁知道可能会发生什么?任何人都可以让它在本地工作吗?
谢谢。
我正在查看 Mike Bostock 的D3.js粒子示例。
我已经在本地复制并粘贴了代码,根本没有更改任何内容。我正在使用 SimpleHTTPServer 运行代码,因此在本地运行不应该有任何安全问题。
每当我将鼠标悬停在正文上时,我都会在控制台中看到以下错误:
Uncaught TypeError: Object #<Object> has no method 'mouse'
有谁知道可能会发生什么?任何人都可以让它在本地工作吗?
谢谢。
你真的硬拷贝了整个引用的库吗?这可能是域间引用问题。你直接引用了http://mbostock.github.com/d3/d3.js?1.25.0
吗?可能是,这在该域之外是不可能的。
有一种方法可以修复代码,以便您可以在http://d3js.org/d3.v3.min.js参考最新版本的 D3
你得到的错误是由行 var m = d3.svg.mouse(this); 将其更改为 var m = d3.mouse(this); 你应该没事。
请参阅此处的发行说明,了解从 D3 v2 到 v3 的更改: https ://github.com/mbostock/d3/wiki/Upgrading-to-3.0
具体来说:
“SVG:别名 d3.svg.mouse 和 d3.svg.touches 已被删除;改用 d3.mouse 和 d3.touches。这些方法是相同的,并且在早期的次要版本中移动,该版本也增加了对 HTML 的支持作为 SVG 元素。”