1. 程式人生 > >超級好用的流程圖js框架

超級好用的流程圖js框架

在我們的開發工程中經常會使用到各種圖,所謂的圖就是由節點和節點之間的連線所形成的系統,數學上專門有一個分支叫圖論(Graph Theroy)。利用圖我們可以做很多工具,比如思維導圖,流程圖,狀態機,組織架構圖,等等。今天我要做的是用開源的HTML5工具來快速構造一個做圖的工具。

工具選擇

預先善其事,必先利其器。第一件事是選擇一件合適的工具,開源時代,程式設計師還是很幸福的,選擇很多。

最終,我選擇了jsPlumb,因為它完全開源,使用很簡單,用D3的話可能會多花很多功夫。joint.js也不錯。大家可以根據自己的需要選擇。

構建靜態應用

下面我們一步一步的來使用jsPlumb來建立我們的流程圖工具。

第一步是等待DOM和jsPlumb初始化完畢,類似document.ready()和jquery.ready(), 要使用jsPlumb, 需要把程式碼放在這個函式裡:

1 2 3 jsPlumb.ready(function() { // ... your code goes here ... }

建立一個jsPlumb的例項,並初始化jsPlumb的配置引數:

1 2 3 4 5 6 7 8 9 10 11 12 13 //Initialize JsPlumb var color = "#E8C870"; var instance = jsPlumb.getInstance({ // notice the 'curviness' argument to this Bezier curve.  the curves on this page are far smoother // than the curves on the first demo, which use the default curviness value.      Connector : [
"Bezier", { curviness:50 } ], DragOptions : { cursor: "pointer", zIndex:2000 }, PaintStyle : { strokeStyle:color, lineWidth:2 }, EndpointStyle : { radius:5, fillStyle:color }, HoverPaintStyle : {strokeStyle:"#7073EB" }, EndpointHoverStyle : {fillStyle:"#7073EB" }, Container:"container-id" });

這裡給給出了一些配置包括,連線線(這裡配置了一個貝塞爾曲線),線的風格,連線點得風格。Container需要配置一個對應的DIV容器的id。(這裡也可以使用setContainer的方法)

下面我們要建立一個節點(node),每一個節點可以用一個DIV來實現。我這裡提供了一個函式來建立節點。

1 2 3 4 5 6 7 8 9 10 11 function addNode(parentId, nodeId, nodeLable, position) { var panel = d3.select("#" + parentId); panel.append('div').style('width','120px').style(

相關推薦

超級流程圖js框架

在我們的開發工程中經常會使用到各種圖,所謂的圖就是由節點和節點之間的連線所形成的系統,數學上專門有一個分支叫圖論(Graph Theroy)。利用圖我們可以做很多工具,比如思維導圖,流程圖,狀態機,組織架構圖,等等。今天我要做的是用開源的HTML5工具來快速構造一

轉:超級流程圖js框架

sch post 控件 star ots rap end 邏輯 eid 支叫圖論(Graph Theroy)。利用圖我們可以做很多工具,比如思維導圖,流程圖,狀態機,組織架構圖,等等。今天我要做的是用開源的HTML5工具來快速構造一個做圖的工具。 工具選擇 預先善其事,

超級的遠程連接工具

遠程桌面 切換 bsp 壓縮解壓 自動 可能 字體 同時 支持 以往 要是使用遠程連接,可能用 類似putty之類的工具,還要在下載一個方便傳輸文件的工具。 但是現在 有了FinalShell ,剛下載體驗了一番,就被他征服了。 首先,顏值擔當,色彩對比度都讓使用者

除了迅雷,這幾款下載神器也超級

迅雷雖然仍舊是功能強大的下載器,但部分網友對其的作風有所不滿,即便是購買了會員,速度也是慢得可以。所以有不少網友就在問,除了迅雷,還有哪些下載的軟體可以代替它呢?本章就給大家介紹幾款下載神器,讓你輕鬆下回需要的資源。   Aria2GUI 許多的朋友在Mac下肯定會遇到這樣的情

js

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="

Ace Token——超級的智慧數字資產管理平臺

數字資產,盡在掌控 24小時不間斷自動盯盤 持倉數字資產價格漲跌提醒 讓您更準確的把握最佳投資時機 交易策略,觸手可及 安全可靠,放心託管,零差評交易體驗 藉助區塊鏈技術,Ace Token 提供全/半自動策略 直接在移動端完成幣幣交易 多元化智慧託管,高階私人定製個性化的專屬投

前端超級a標籤跳轉帶錨點效果

<div class="nav"> <ul>       <li><a href="1.html" class="hover"> 首頁</a></li>       &

的Jquery框架

以下的框架都是自己專案用過的,有需要的,可以直接拿走用! 一、Date (1)jeDate日期控制元件 -(原生JS版)          簡潔,清新,好配置          官網:

c++超級的回撥signal slot

用過Qt的應該都知道,signal  slot,用來做解耦及回撥超級好用,如果沒有Qt怎麼辦,可以用c++11的功能實現, 當然網路上已經有許多實現,可以直接用的。 比如: 示例程式碼: /

一款超級的股票財經資料介面包API

Tushare是一個免費、開源的python財經資料介面包。主要實現對股票等金融資料從資料採集、清洗加工 到 資料儲存的過程,能夠為金融分析人員提供快速、整潔、和多樣的便於分析的資料,為他們在資料獲取方面極大地減輕工作量,使他們更加專注於策略和模型的研究與實現上

那些年,超級的前端工具!

                                           &n

超級雲centos主機的MATE圖形化的介面安裝步驟

最近買了一個百度的雲centos主機,我是想用此來java伺服器使用的,初次使用對於操作上不便利,後面研究安裝一個圖形化介面方便使用: 以安裝 MATE 桌面環境為例: 登入伺服器,執行命令 yum groups install "X Window System

一款比較JS時間控制元件-laydate

一款比較好用的JS時間控制元件-laydate   官方講解:http://laydate.layui.com/   具體的內容請看官方講解,此處僅說名應用:   1、在jsp或html或其他中引入laydate.js     <script src="……/laydate/l

工作中發現的超級的辦公神器,秒秒鐘提高效率

工作的過程中,總會發現很多好用的軟體,和大家分享,後續會補充 Resharper(.NET開發必備) ReSharper是一個JetBrains公司出品的著名的程式碼生成工具,其能幫助Microsoft Visual Studio成為一個更佳的IDE。它包括一系列豐富的

全網最詳細的一個超級的命令列工具【Cmder】的優點有哪些?

    不多說,直接上乾貨!   1、把conemu,msysgit和clink打包在一起,讓你無需配置就能使用一個真正乾淨的Linux終端!甚至還附帶了漂亮的monokai配色主題。   2、選中右擊直接可以實現複製功能   3、主控臺文字自動放大縮小功能,按下Ctrl+滑鼠滾輪就可以

全網最詳細的一個超級的命令列工具【Cmder】的下載與安裝(圖文詳解)

    不多說,直接上乾貨!         下載的時候,有兩個版本,分別是mini與full版;唯一的差別在於有沒有內建msysgit工具,這是Git for Windows的標準配備;全安裝版 cmder 自帶了 msysgit, 壓縮包 23M, 除了 git 本身這個命令之外, 裡面

全網最詳細的一個超級的命令列工具【Cmder】的安裝之後的一些配置(圖文詳解)

    不多說,直接上乾貨! 1、修改命令提示符λ為$    首先,我們看到    進入解壓後的cmder的目錄,進入vendor,開啟init.bat檔案。   修改第15行的程式碼 @prompt $E[1;32;40m$P$S

全網最詳細的一個超級的命令列工具【Cmder】是什麼?

    不多說,直接上乾貨! Cmder是什麼?     一款Windows環境下非常簡潔美觀易用的cmd替代者,它支援了大部分的Linux命令。支援ssh連線linux,使用起來非常方便。比起cmd、powershell、conEmu,其介面美觀簡潔,功能強大。        

推薦:13 款免費但超級的專案管理工具

專案管理工具的挑選一直以來就是專案經理們的“心頭大患”,選好了事倍功半,選不好可就是事半功倍了。 本文推薦的工具也是我看別人推薦的,所以有不喜歡或者覺得不好用的工具,大家勿噴,畢竟個人喜好不同。 可能很多人說現在自己已經牛到脫離了各種專案管理工具,但是抱歉,這篇文章也不是給你們看的,這篇文章更多的是針對專

推薦:13 款免費但超級的項目管理工具

ogg 介紹 ebo 效率 簡單的 你們 上交 eve 討論 項目管理工具的挑選一直以來就是項目經理們的“心頭大患”,選好了事倍功半,選不好可就是事半功倍了。 本文推薦的工具也是我看別人推薦的,所以有不喜歡或者覺得不好用的工具,大家勿噴,畢竟個人喜好不同。 可能很多人說現在