【问题标题】:D3.js json error when making tree制作树时D3.js json错误
【发布时间】:2012-07-06 10:00:13
【问题描述】:

我正在尝试在 D3.js 中制作自己的树,但我无法弄清楚如何制作。我查看了以下链接:

http://bl.ocks.org/1249394#interactive_tree.css
d3js Tree square

甚至尝试复制它们以使某些东西起作用以便我可以修补,但这对我不起作用。我已经在代码中添加了警报,并且在谱系和可折叠树中,代码在 d3.json 调用后立即停止工作。我也复制了 json 文件并将它们重命名以使它们相同。在谱系示例中

d3.json("info.json", function(json) {
  alert(json);
  var nodes = tree.nodes(json); 
  alert('hi');

所以这里第一个警报有效而第二个无效,这在两个示例中都会发生。如果有人知道原因,将不胜感激解释或修复。谢谢!!!

我发现当 d3.json("localhost...", callback) 被调用时,它返回 null。我在另一篇文章中读到有跨域限制。我不太确定这意味着什么或如何解决它

我已经在本地运行我的应用程序时从同一个目录中尝试过它,并且我已经从我的 Xamp 服务器上尝试过它。而且当调用 alert(json) 时,它仍然显示为 null。

【问题讨论】:

    标签: javascript d3.js


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 2015-07-04
      • 2014-05-04
      • 1970-01-01
      • 1970-01-01
      • 2012-07-20
      • 1970-01-01
      • 1970-01-01
      • 2018-02-10
      • 2014-06-06
      相关资源
      最近更新 更多