0

我正在尝试在 javascript 中创建一个对象并将文本附加到它。我可以很好地将文本附加到 svg 但是当我尝试将它附加到一个圆圈时,它不会出现。

这就是我的代码的样子:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>D3 Tutorial</title>
    <script src="http://d3js.org/d3.v3.min.js">  </script>
</head>
<body>
    <script>

        var canvas = d3.select("body")
                    .append("svg")
                    .attr("width", 500)
                    .attr("height", 500);

        var circle = canvas.append("circle")
                        .attr("cx", 400)
                        .attr("cy", 350)
                        .attr("r", 25);

        canvas.append("text")
            .attr("fill", "red")
            .attr("y", 50)
            .text("hello");


        circle.append("text")
                .attr("fill", "red")
                .attr("y", 50)
                .text("hello");

    </script>
</body>
</html>

这是它的外观: 结果

4

1 回答 1

3

SVG 必须遵循一定的结构。text将元素附加到 a circle(或rect类似的)是无效的,因此不会显示。

于 2013-06-13T19:40:26.537 回答