Javascript 创建树时发生D3.json错误

Javascript 创建树时发生D3.json错误,javascript,d3.js,Javascript,D3.js,我试图在D3.js中创建我自己的树,但我在想如何创建一棵树时遇到了困难。我查看了以下链接: 甚至试着复制它们来让一些东西工作,这样我就可以修补了,但这对我不起作用。我已经用警报将代码打了个谜,在谱系树和可折叠树中,代码在d3.json调用之后立即停止工作。我也复制了json文件,并重命名了它们,使它们相同。在系谱的例子中 d3.json("info.json", function(json) { alert(json); var nodes = tree.nodes(json);

我试图在D3.js中创建我自己的树,但我在想如何创建一棵树时遇到了困难。我查看了以下链接:


甚至试着复制它们来让一些东西工作,这样我就可以修补了,但这对我不起作用。我已经用警报将代码打了个谜,在谱系树和可折叠树中,代码在d3.json调用之后立即停止工作。我也复制了json文件,并重命名了它们,使它们相同。在系谱的例子中

d3.json("info.json", function(json) {
  alert(json);
  var nodes = tree.nodes(json); 
  alert('hi');
所以在这里,第一个警报起作用,第二个警报不起作用,这在两个示例中都会发生。如果有人知道原因,请解释或修复。谢谢

我发现当调用d3.json(“localhost…”,callback)时,它返回null。我在另一篇帖子上读到有跨域限制。我真的不知道这意味着什么,也不知道如何修复它

我在运行我的应用程序的同一个目录中本地尝试了这两种方法,并在我的Xamp服务器上进行了尝试。当调用警报(json)时,它仍然显示null。

有一些关于这方面的更多信息。基本上,浏览器不会从本地文件系统或原始页面不在的服务器加载JSON文件。有很多方法可以解决这个问题,例如,Google Chrome可以使用
--disable web security
来禁用这些限制,但不建议这样做

所有现代浏览器都有一个Javascript错误控制台,可以向您显示JSON文件未加载的确切原因。请记住,当您通过本地web服务器提供页面时,不应在JSON文件的路径中指定
localhost://
或类似内容,而应指定相对于HTML文件所在目录的路径