Jin*_*Kim 15 html javascript css family-tree
我正在尝试实现与http://www.ancestry.com类似的东西,但我不确定如何绘制线条.
这是我想要做的粗略的ascii草图:
+----GrDAD1
|
+----DAD----+
| +----GrMOM1
ME --+
| +----GrDAD2
+----MOM----+
|
+----GrMOM2
Run Code Online (Sandbox Code Playgroud)
我认为这样做的一种方法是创建一个单元格表格,并创建线条图像,将每个孩子与父母联系起来.我猜这是一种更简单的方法,但我对CSS的了解非常有限.有没有人建议如何实现这个?
jer*_*rne 10
我还会再提一个答案,虽然上面的答案都在争议中.
假设您想要在所有浏览器上工作.如果您需要使用Internet Explorer,并且编写自己的Canvas解决方案,则可能需要包含ExplorerCanvas.
家庭树本质上是二元树 - 我知道,现实生活对于收养,离婚,呃都很棘手,但让我们假设他们是一个二元朝一个方向(祖先)来自一个特定的人.
一个使用Canvas的好工具,包括在IE上工作的桥梁,并使用简单和通用的数据格式是JavaScript InfoVis Toolkit.
查看样本:http: //thejit.org/static/v20/Jit/Examples/Spacetree/example2.html
它可能不是你想要的开箱即用,但你可以调整外观和感觉.
插件的数据有效负载非常简单,您的示例如下所示:
var tree = {
id: "ME", // Needs to be internally unique
name: "ME", // Visual label, does not need to match id
data: {}, // not really used here, but parameter needed
children: [
{id: "DAD",
name: "DAD",
data: {},
children: [
{id: "GrDAD1",
name: "GrDAD1",
data: {},
children: []},
{id: "GrMOM1",
name: "GrMOM1",
data: {},
children: []},
]},
{id: "MOM",
name: "MOM",
data: {},
children: [
{id: "GrDAD2",
name: "GrDAD2",
data: {},
children: []},
{id: "GrMOM2",
name: "GrMOM2",
data: {},
children: []},
]}
]
};
Run Code Online (Sandbox Code Playgroud)
我相信还有其他解决方案,我希望你能找到适合你的解决方案.
| 归档时间: |
|
| 查看次数: |
31795 次 |
| 最近记录: |