小编Ste*_*all的帖子

d3使用函数参数append()

这有效:

// A
d3.select("body").selectAll(".testDiv")
  .data(["div1", "div2", "div3"])
  .enter().append("div")
    .classed("testDiv", true)
    .text(function(d) { return d; });
Run Code Online (Sandbox Code Playgroud)

以下片段是相同的,除了append的参数,而不是如上所述的"div",是一个函数(d),只返回"div":

// B
d3.select("body").selectAll(".testDiv")
  .data(["div1", "div2", "div3"])
  .enter().append(function(d) { return "div"; })
    .classed("testDiv", true)
   .text(function(d) { return d; });
Run Code Online (Sandbox Code Playgroud)

但是,B不起作用,而是在'Node'上返回错误消息"未捕获的TypeError:无法执行'appendChild':参数1不是'Node'类型."

"div"作为append()的参数function(d) { return "div"; }有何不同?

javascript d3.js

5
推荐指数
1
解决办法
5668
查看次数

标签 统计

d3.js ×1

javascript ×1