如何在v4中的d3.js中拖动时设置原点 [英] How to set the origin while drag in d3.js in v4

查看:472
本文介绍了如何在v4中的d3.js中拖动时设置原点的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在拖动< rect> 时遇到跳跃问题。



href =http://stackoverflow.com/questions/15966256/how-to-set-the-origin-drag-origin-for-drag-behavior-in-d3-javascript-library>问题建议使用 drag.origin() 但D3 v4版本没有这个方法了。



一些身体建议如何解决跳过问题?

解决方案

而不是 origin 使用<$ c $

 <$ c $ 

c> .origin(function(){
var t = d3.select(this);
return {x:t.attr(x),y:t.attr(y) };
})

将成为

  .subject(function(){
var t = d3.select(this);
return {x:t.attr(x) ,y:t.attr(y)};
})

使用d3 v4是此处



API参考此处


I am facing a jump issue when I drag a <rect>.

In this question they suggest to use drag.origin() but D3 v4 version doesn't have this method anymore.

Can some body suggest how to solve the jump issue?

解决方案

Instead of origin use subject.

So this

 .origin(function() { 
        var t = d3.select(this);
        return {x: t.attr("x"), y: t.attr("y")};
    })

will become

 .subject(function() { 
        var t = d3.select(this);
        return {x: t.attr("x"), y: t.attr("y")};
    })

Working fiddle using d3 v4 is here

API reference here

这篇关于如何在v4中的d3.js中拖动时设置原点的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆