2015-09-11 49 views
1

我想要创建类别(较大的圆圈)然后是子类别(较小的圆圈),使得#category是使用D3 js的#subcategory的父类。在另一个圆圈内拖放一个圆,并重新调整大小并自动调整

喜欢的东西https://www.droptask.com/

*我需要拖放#category圈,对此我能够做到内部的圈子。

http://bl.ocks.org/mbostock/4063530

我想调整和自动调整,我可以拖动圆到另一个圈子就变成了圆的子类别的圈子。

我无法正确使用包装布局中的强制。有人可以建议一种方式。

+0

您的问题标题太模糊,太长,请重新标题。你试图达到的是可能的,我相信没有这样的例子。 – Cyril

回答

0

当然可以。以下是我将如何处理这个问题。

创建组层次结构。

可以说你的洞穴类别&子类别。我会这样做。

<g id='category'></g> 
<g id='sub_category'></g> 

无论你想要什么样的形状,你可以在组内绘制它们。

<g id='category'> 
    <circle>...</circle> 
    <circle>...</circle> 
</g> 
<g id='sub_category'> 
    <circle>...</circle> 
    <circle>...</circle> 
    <circle>...</circle> 
</g> 

现在您可以编写拖动事件。对于类别圈子。 为了把子类别放到一个类别中,为类别组创建一个'mouseover'事件,当你在一个类别圆圈上时设置一个布尔值,当你删除子类别时,确保设置了布尔值。 (显然你必须在mouseout上解除它)。

我希望你明白。试一试。回来你的工作&我们可以帮助更多。

+0

我为这项工作创建了一个jsfiddle。下面是链接:http://jsfiddle.net/shishiruu/r1mz2apr/2/我想我的侧边栏元素拖动并追加到右侧组。 RightSection的元素也是可拖动的。这看起来工作。当我拖动rightSection onload圈(#id1)到任何点,然后拖放左侧部分,那么我无法定位内圈。我该如何解决这个问题?而且我认为我没有有效地使用组元素。请建议!谢谢 –

+0

这是我在jsfiddle上的工作:http://jsfiddle.net/shishiruu/r1mz2apr/3/ –

+0

你目前的问题是什么? – Fawzan