【发布时间】:2017-01-13 19:40:28
【问题描述】:
在this JSFiddle 我已经在svg 中实现了元素。我希望这组元素是可拖动的,我已经使用d3.drag 和transform:translate 进行了尝试。拖动不顺畅。它在这里和那里闪烁和跳跃。
它背后的原因是什么,如何克服?
拖拽功能如下:
var dragcontainer = d3.drag()
.on("start", function() {})
.on("drag", function(d, i) {
var x = d3.event.x;
var y = d3.event.y;
d3.select(this.parentNode.parentNode).attr("transform", "translate(" + x + "," + y + ")");
})
.on("end", function() {});
【问题讨论】:
-
冒险猜测
d3.event.x是相对于父级的,通过移动父级而不是拖动的元素,您可以将d3.event.x更改为下一个“刻度” -
也许看看
drag.subject?
标签: javascript css d3.js svg