在下面的链接中,我试图找出代码的含义。 https://bl.ocks.org/mbostock/10343037
这是我不理解的特定代码,它看起来像嵌套函数使循环工作。
我想知道变量t
是什么,通过在控制台中检查它在0和1之间,但我找不到它的来源。
我也没有得到.each("end", loop);
!function loop() {
circle.transition()
.ease("linear")
.duration(5000)
.tween("transform", function() {
return function(t) {
circle.attr("cx", x(t)).attr("cy", y(ease(t)));
timeReference.attr("x1", x(t)).attr("x2", x(t)).attr("y2", y(ease(t)));
easeReference.attr("x2", x(t)).attr("y1", y(ease(t))).attr("y2", y(ease(t)));
};
})
.each("end", loop);
}();
答案 0 :(得分:1)
您可以从此处阅读有关补间的更多信息,以便清楚地了解每个所选元素的返回函数。
答案 1 :(得分:0)
根据以下链接,变量t
是介于0和1之间的正常时间。
https://bost.ocks.org/mike/transition/
关于最后一个语句.each("end", loop);
,它会产生一个无限循环,因此每次都会重新启动动画。