jsplumb 绘制页面链接线

jsplumb 绘制页面链接线最近公司打算实现通用的流程设计 对比之前公司有一套源码 发现它采用的是 FlowDesign 来实现的 但从晚上查找之后发现它实际上是采用了 jsplumb 来实现流程绘制的 这也不难理解 毕竟 jsplumb 是通用的程序 FlowDesign 只能算是 jsplumb 的具体使用 FlowDesign 的地址是 http flowdesign leipi org Jsplumb 官网 https

最近公司打算实现通用的流程设计,对比之前公司有一套源码,发现它采用的是FlowDesign来实现的,但从晚上查找之后发现它实际上是采用了jsplumb 来实现流程绘制的,这也不难理解,毕竟jsplumb 是通用的程序,FlowDesign只能算是jsplumb的具体使用,

FlowDesign 的地址是http://flowdesign.leipi.org/

Jsplumb官网:https://jsplumbtoolkit.com

GitHub:https://github.com/sporritt/jsplumb/

jsplumb 的概念中主要分为四部分:参照jsplumb介绍的文档写的

          锚(Anchor):一个位置,放置端点的地方,相对于一个元素的来源,您不需要自己硬编码来创建它,jsPlumb提供给您各种功能,您只需要按照您的需要创建它就可以了。它没有可视化的显示,只是一个逻辑位置,可以使用锚的id来引用它,jsPlumb支持这样做,并且您可以使用坐标来表示[x,y,x方向,y方向]

         端点(Endpoint ):链接的一端的可视化表示,您可以创建并可以链接他们;您可以让他们支持拖拽,或者您可以直接使用jsPlumb.connect()在创建链接时直接创建它们。

         连接器(Connector):链接两个元素的线,页面的可视化表示,jsPlumb有三种默认类型:Bezier曲线,直线,和流程图链接器,您不用去处理连接器,当您需要使用它们时,您只需要定义它们即可。

         覆盖物(Overlay):一个UI组件,是用来是用来装饰连接器,例如标签、箭头等。

参照https://segmentfault.com/a/22507 绘制的位置图来理解

jsplumb 绘制页面链接线

 

按照说明必须引用的文件如下:

在使用jsplumb来实现自己的示例程序如下:

<style> #diagramContainer { padding: 20px; width: 80%; height: 400px; border: 1px solid gray; background-image: url(http://p3alsaatj.bkt.clouddn.com/310_1bVYeW_grid.jpeg); background-repeat: repeat; } .item { height: 80px; width: 80px; border: 1px solid blue; float: left; } .myCssClass { color: bisque; background-color: red; } </style> </head> <body> <div id="diagramContainer"> <div id="item_left" class="item"></div> <div id="item_right" class="item" style="margin-left:300px;margin-top: 100px;"></div> </div> </body> <script> //Straight:直线,Bezier :Bezier曲线,流程图链接器 Flowchart var common = { isSource:true, isTarget:true, connector: ['Bezier'], //paintStyle: { stroke: 'lightgray', strokeWidth: 3 },//空的锚点风格 endpointStyle: { fill: 'lightgray', outlineStroke: 'darkgray', outlineWidth: 2 } } jsPlumb.ready(function(){ //添加节点 jsPlumb.addEndpoint('item_left',{achors:['Right']},common) jsPlumb.addEndpoint('item_right',{achors:['Left']},common) jsPlumb.draggable('item_left', { containment: 'parent', grid: [10, 10] }) jsPlumb.draggable('item_right') // 单点击了连接线, 似乎不怎么好用 jsPlumb.bind('click', function (conn, originalEvent) { if (confirm('确定删除所点击的链接吗?')) { jsPlumb.detach(conn) } }) }); //增加拖拽,也不怎么好用 $('.item').resizable({ resize: function (event, ui) { jsPlumb.repaint(ui.helper) } }) //jsPlumb.setContainer('adiagramContainer') </script>

显示效果如下

jsplumb 绘制页面链接线

 

C#实现参考地址:http://www.cnblogs.com/sggx/p/3836432.html

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/232093.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C#FindWindowEx参数详解

    C#FindWindowEx参数详解FindWindowEx参数详解本函数的其他内容在网络上都比较多,这里主要说一下它的参数设置和搜索结果的区别。函数功能:在窗口列表中寻找与指定条件相符的第一个子窗口。该函数获得一个窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。这个函数查找子窗口,从排在给定的子窗口后面的下一个子窗口开始。在查找时不区分大小写。函数原型:HWNDFindWindowEx(HWNDh

    2022年6月1日
    53
  • vdbench的使用教程——裸盘测试和文件系统测试

    一、vdbench简介  vdbench是一个I/O工作负载生成器,用于验证数据完整性和度量直接附加和网络连接的存储的性能。它是一个免费的工具,容易使用,而且常常用于测试和基准测试。可以使用vdbench测试磁盘和文件系统的读写性能。vdbench中常用的一些名词解释:HD  主机定义 SD  存储定义  WD 工作负载定义 RD  运行定义 FSD…

    2022年4月3日
    1.1K
  • 打印机扫描smb错误_打印服务器错误不能提供打印

    打印机扫描smb错误_打印服务器错误不能提供打印1、首先要检查打印机是否处于联机状态,如果打印机没有联机是无法进行工作的,检查打印机与电脑之间的连线是否正确。2、然后在开始中找到设备和打印机,在弹出窗口右键单击空白处,选择添加打印机,添加本地打印机,点击下一步,搜索并安装驱动,安装完成后就可以正常打印了。3、可以重新启动打印机,待打开后,让打印机重新工作。4、把打印机设置为默认打印机,点击开始,然后找到设备和打印机,打开打印机窗口,鼠标的右键点…

    2022年10月19日
    1
  • 软件缺陷报告[通俗易懂]

    软件缺陷报告[通俗易懂]1、定义概述:标识并描述发现的缺陷,具有清晰、完整和可重视问题所需的信息的文档理解:测试人员发现缺陷,记录,通过缺陷报告将缺陷报告给开发人员,并对缺陷进行跟踪管理。缺陷报告是测试人员与开发人员之间重要的沟通方式2、什么是缺陷软件缺陷就是通常说的Bug,它是指在软件中存在的影响软件正常运行的问题3、软件缺陷产生的原因1、需求不明确和变更软件需求不清晰或者开发人员对需求理解偏差,导致软件设…

    2022年9月18日
    2
  • 做java开发的前景何在

    做java开发的前景何在做了几年的it研发工程师,到现在还从事coding,尤其我本身是女生,工作也有5年多了,一直从事coding,用过很多的开发语言,但是好像没有精通。所以找工作不知道该用哪种语言找,于是乎瞎碰,没有目标的乱碰。呵呵。曲折的工作经历,中间休息了两年没有开发,搞了半年的需求分析,后来由于不喜欢新的工作环境离职,现在又走上了老路coding,本身我觉得没有什么,但是在现在的公司里越来越觉得做研发尤其是…

    2022年7月14日
    16
  • Lucene.Net 2.3.1开发介绍 —— 三、索引(六)

    Lucene.Net 2.3.1开发介绍 —— 三、索引(六)

    2021年9月7日
    65

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号