利用canvas绘画二级树形结构图

Posted 前端程序人生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用canvas绘画二级树形结构图相关的知识,希望对你有一定的参考价值。

上周需要做一个把页面左侧列表内容拖拽到右侧区域,并且绘制成关系树的功能。
看了设计图,第一反应是用canvas绘制关系线。
吭哧吭哧搞定这个功能后,发现用canvas绘图,有一个很严重的缺陷。那就是如果左侧关系特别多,需要绘制成百上千条时,而canvas画布的宽高在写dom的时候就已声明。关系很多的情况下,无法使用canvas。
不过还是记录一下研究成果。
下面是设计图:



做出效果如下:


利用canvas绘画二级树形结构图


html、css代码就不贴了。 js主要用到了拖拽、canvas绘制。


function startDrag(ev) {