【发布时间】:2013-12-18 15:20:38
【问题描述】:
我正在制作带有交互式标记的图表。每个标记都沿侧轴开始,单击时会沿线移动到其位置并增大大小。我让图标移动和增长,但在重置图表时遇到了麻烦。我可以通过第二次单击使图标返回其原始位置,但是在第二次单击后,图标将不再响应单击。 我怀疑这很简单,但我没有看到。
var coal = svg.append("svg:image")
.attr("xlink:href", "nouns/coal.svg")
.attr("width", 35)
.attr("height", 35)
.attr("x", 10)
.attr("y", 30)
.on("click", function() {
coal.transition()
.attr("x", 80)
.attr("y", 150)
.attr("width", 70)
.attr("height", 70)
.duration(750)
.each("end", function() {
d3.select(this)
.on("click", function() {
coal.transition()
.attr("width", 35)
.attr("height", 35)
.attr("x", 10)
.attr("y", 30);
})
})
});
我有一堆图标,所以我很想找到一种解决方案,只要点击一个新图标,它就会将任何被激活的图标发送回其轴侧主页。
注意:我正在制作小提琴,但小提琴和我相处得不好,所以手指交叉。
【问题讨论】:
标签: animation svg d3.js transitions