8

我的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应该是正确的,因为如果我在浏览器中执行检查元素,我可以单击D3链接并将我带到它的源代码。

在此处输入图像描述

4

3 回答 3

16

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

<meta charset="utf-8">

D3 的未压缩源包括 pi 的实际符号,如果未定义字符集,浏览器会感到困惑。

于 2013-05-21T13:28:26.010 回答
7

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

这样,Javascript 请求将转到 file:///.../D3/d3/d3.v3.js ,它没有正确的响应标头集,例如字符集和 MIME。

您始终可以从 CDN 获取它以避免此问题:

<script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script>
于 2013-05-21T13:32:03.227 回答
0

有类似的问题。我的问题是我的脚本文件在加载 d3js 库之前正在加载。只需添加defer即可解决问题。

<script src="app.js" defer></script>

于 2021-11-06T12:47:27.910 回答