D3.js - 创建一个矩形?

3

我刚开始学习d3.js,我有一个非常简单的程序,只是创建了一个矩形:

<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title> D3 Slider </slider>
     <script src="//d3js.org/d3.v3.min.js" charset="utf-8"></script>
</head>
<body>
<div>
    <script>
        //make the svg container 
        var svgContainer = d3.select("body").append("svg")
                                       .attr("width",200)
                                       .attr("height",200); 
        //make the rectangle 
        var rectangle = svgContainer.append("rect")
                                     .attr("x",150)
                                     .attr("y",50)
                                  .attr("width",50)
                               .attr("height",140);
    </script>
</div>

</body>
</html>

但是当我运行它时,矩形不会创建,屏幕上什么都没有?我需要将SVG元素添加到div中吗?如果这是一个简单的问题,对不起,但我就是想不出来!

1个回答

7
"

<title> D3 Slider </slider>被错误地使用了</slider>来结束,应该改为</title>才能使代码完美运行。

同时建议将脚本移到</body>标签前或在d3.js脚本下方的<head>标签中。

"

<!doctype html>
<html lang="en">

<head>
  <meta charset="utf-8">
  <title>D3 Slider</title>
  <script src="//d3js.org/d3.v3.min.js" charset="utf-8"></script>
</head>

<body>
  <div>

  </div>
  <script>
    //make the svg container 
    var svgContainer = d3.select("body").append("svg")
      .attr("width", 200)
      .attr("height", 200);
     //make the rectangle 
    var rectangle = svgContainer.append("rect")
      .attr("x", 150)
      .attr("y", 50)
      .attr("width", 50)
      .attr("height", 140);
  </script>
</body>

</html>


谢谢你的回答!但是在关闭之前要做什么? - ocean800
1
我刚刚注意到为什么你的代码无法运行,因为<title>以</slider>结尾。 - user2950720
哦...哇。再次,真的很无聊,但非常感谢! - ocean800

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接