javascript - 使用 D3 将 SVG Canvas 附加到主体以外的元素

标签 javascript html d3.js svg

是否可以将 SVG Canvas 附加到 <body> 以外的元素?如果脚本不在该元素内,是否使用 D3.js?

例如,下面的代码不起作用:

<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....但显然我们并不总是想立即将 Canvas 附加到正文。

我发现如果<script>在容器 div 内然后我可以使用 d3.select("#container")但对我来说似乎很奇怪,我必须将我的脚本包含在我想要 Canvas 的特定容器中。

最佳答案

您正试图在它存在之前选择 #container。您需要将代码放在 onload 中或将脚本移动到页面中的 #container 下方。

关于javascript - 使用 D3 将 SVG Canvas 附加到主体以外的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13865606/

相关文章:

javascript - 获取存储在谷歌地图标记的附加字段中的数据

html - 覆盖 “a” 标签应用的 CSS

javascript - 如何使用 Javascript 移动整组对象

javascript - D3 箭头标记表示目标 - 源流,而不是源 - 目标流

javascript - 使用 for 循环添加多个图表 d3、nvd3

javascript - 使用 jQuery 播放声音时摆脱延迟时间

javascript - 应该在排序函数之后的回调中设置状态吗?

javascript - 在D3 V4中,如何正确使用 .ease ("bounce")?

javascript - 指令的范围与其模板之间没有数据绑定(bind)

php - 创建 SEO 规范路径(非绝对路径)