最简单的D3.js例子不起作用

时间:2013-05-21 13:06:56

标签: javascript d3.js

我在我的index.html文件中有这个,但它没有显示我想要添加D3的段落

<!DOCTYPE html>
<html>
  <head>
    <title> D3 page template </title>
    <script type="text/javascript" src = "d3/d3.v3.js"></script> 
  </head>

  <body>
    <script type="text/javascript">
        d3.select("body").append("p").text("new paragraph!");
    </script>
  </body>
</html>

我引用D3.js的路径应该是正确的,因为如果我在浏览器中执行了一个inspect元素,我可以点击D3链接,它会转到我的源代码。

enter image description here

2 个答案:

答案 0 :(得分:15)

您缺少HTML页面中的字符集。添加如下内容:

<meta charset="utf-8">

D3的未缩小来源包括pi的实际符号,如果未定义字符集,则会混淆浏览器。

答案 1 :(得分:6)

我将假设您在没有Web服务器的情况下进行测试。如果是这样,那么您的URL将读取file:// ....而不是http:// ..

有了这个,Javascript请求将转到file:///.../D3/d3/d3.v3.js,它们没有正确的响应头设置,例如charset和MIME。

您可以随时从CDN获取它以避免此问题:

<script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script>