我正在尝试使用 d3.behavior.drag 函数将文本/形状拖到不同的位置。最终,当新位置从原来的位置移动到由 Ruby on rails 运行的 SQL DB 时,我希望保存新位置的变量。
但是,在我尝试当前代码的那一刻,文本/形状并没有移动,而是似乎在同一位置复制:
var drag = d3.behavior.drag()
.origin(Object)
.on("drag", function(d) {
d.x = d3.event.x;
d.y = d3.event.y;
draw();
});
然后我的文本/形状和位置有一个“绘图”功能
function draw() {
// code is within here - check fiddle
}
draw()
我开始相信它不起作用,因为我在我的对象中使用 translate 而不是 x & Y:
var node= [ {name:'amy', country: 'USA', 'translate:"translate(190,83)"}]
我见过的一些例子有这个:
var node= [ {name:'amy', country: 'USA', x: 100, y:0}]
我也尝试过这种方式,但是当我拖动形状时,它会留下重复形状的痕迹。
如果有人能解释为什么会发生这种情况,我将不胜感激/