我有一个d3元素,它调用一个名为tick
的函数。
g.append("g")
.attr("clip-path", 'url(' + $location.path() + '#clip)' )
.append("path")
.datum(data)
.attr("class", "line")
.transition()
.duration(500)
.ease(d3.easeLinear)
.on("start", tick);
在功能勾选中,如果我console.log(this)
,我会将以下内容打印到控制台
<path class="line"></path>
但是,如果我console.log(d3.select("line"))
,我会得到一个巨大的对象,我无法操纵this
关键字。选择元素并返回d3
的等价物的等效this
方法是什么?
答案 0 :(得分:1)
等同于&#34;是:
console.log(d3.select("line").node())
鉴于这个简单的片段:
<svg width="100" height="100">
<circle cx="40" cy="40" r="20" fill="teal"></circle>
</svg>
var circle = d3.select("circle");
console.log(circle.node());
console.log(circle);
console.log(circle.node())
为您提供:
<circle cx="40" cy="40" r="20" fill="teal"></circle>
虽然console.log(circle)
为您提供:
zi {_groups: Array[1], _parents: Array[1]}
注意:我在&#34;等效&#34;中加上引号因为this
取决于许多事情。所以,这相当于您的具体问题。