如果脚本不在元素中,是否可以使用D3.js将SVG canvas附加到<body>
以外的元素上?
例如,以下代码不起作用:
<html>
<body>
<script src="../../d3.v2.js"></script>
<script>
var vis = d3.select("#container")
.append("svg:svg")
.attr("width",w)
.attr("height",h);
</script>
<div id="container"></div>
</body>
我见过的所有示例都使用d3.select("body").append....
,但显然我们并不总是希望将画布立即附加到正文中。
我发现如果<script>
在容器div中,那么我可以使用d3.select("#container")
,但对我来说似乎很奇怪,我必须在我想要画布的特定容器中包含我的脚本。
发布于 2012-12-14 01:57:51
您试图在#container
存在之前选择它。您需要将代码放在onload
中,或者将脚本移到页面中的#container
下。
https://stackoverflow.com/questions/13865606
复制相似问题