jTopo官网:http://www.jtopo.com/

1、特点:

基于HTML5 Canvas,不依赖其他库

2、应用:

效果:

源码github地址

在HTML页面中引入jtopo.min.js文件,添加一个canvas:

 <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>绘制拓扑图</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="">
<meta name="keywords" content="">
<meta name="author" content="">
<link href="http://cdn.bootcss.com/twitter-bootstrap/2.0.4/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="css/base.css">
<script type="text/javascript" src="js/jtopo-min.js"></script>
<script type="text/javascript" src="js/toolbar.js"></script>
<link href="http://cdn.bootcss.com/twitter-bootstrap/2.0.4/css/bootstrap-responsive.min.css" rel="stylesheet">
<!--[if lt IE 9]>
<script src="//html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
</head> <body>
<ul id="contextmenu" style="display: none;">
<li><a>顺时针旋转</a></li>
<li><a>逆时针旋转</a></li>
<li><a>放大</a></li>
<li><a>缩小</a></li>
<li><a>节点详情</a></li>
<li><a>编辑节点</a></li>
<li><a>删除该节点</a></li>
</ul>
<ul id="linemenu" style="display: none;">
<li><a>删除该连线</a></li>
</ul>
<ul id="detail" style="display:none;background-color :#d3d3d3;"></ul>
<div class="container">
<div id="content">
<div class="row clearfix">
<div class="span2">
<div class="coms" id="components">
<div class="component" title="exchanger" trigger="manual">
<a class=" icon exchanger"></a>
</div>
<div class="component" title="server" trigger="manual">
<a class=" icon server"></a>
</div>
<div class="component" title="subnetwork" trigger="manual">
<a class=" icon subnetwork"></a>
</div>
<div class="component" title="node" trigger="manual">
<a class=" icon node"></a>
</div>
<div class="linkline" title="greenline" trigger="manual">
<span class=" line greenline" id='1'></span>
</div>
<div class="linkline" title="orangeline" trigger="manual">
<span class=" line orangeline" id='2'></span>
</div>
<div class="linkline" title="redline" trigger="manual">
<span class=" line redline" id='3'></span>
</div>
</div>
</div>
<div class="span10">
<canvas width="850" height="400" id="target"></canvas> </div>
</div> <!-- row -->
</div> <!-- /content -->
</div> <!-- /container -->
<script src="http://cdn.bootcss.com/jquery/1.9.1/jquery.min.js"></script>
<script src="http://cdn.bootcss.com/twitter-bootstrap/2.0.4/bootstrap.min.js"></script>
<script src="js/com.js"></script>
</body>
</html>

根据自身需求,控制节点、连线等的样式;

给节点、连线添加右键菜单;

可以通过添加鼠标事件实现拖拽组件绘制拓扑图;

节点、连线、右键菜单、拓扑图的数据可用json格式在前后端传递。

网络拓扑图js插件——jTopo应用的更多相关文章

  1. JS绘制拓扑图示例 (JTopo)

    目前在做的项目是渔政的监控,需要用到的设备包括雷达,光电,站点信息等,想要更直观的展现设备之间的连接关系和状态信息,这时候需要画一张拓扑图 在做拓扑图之前,首先要学习一下,html里面另一个比较常用的 ...

  2. python生成组织架构图(网络拓扑图、graph.editor拓扑图编辑器)

    Graph.Editor是一款基于HTML5技术的拓补图编辑器,采用jquery插件的形式,是Qunee图形组件的扩展项目,旨在提供可供扩展的拓扑图编辑工具, 拓扑图展示.编辑.导出.保存等功能,此外 ...

  3. visjs使用小记-1.创建一个简单的网络拓扑图

    1.插件官网:http://visjs.org/ 2.创建一个简单的网络拓扑图 <!doctype html> <html> <head> <title> ...

  4. 快速开发基于 HTML5 网络拓扑图应用

    采用 HT 开发网络拓扑图非常容易,例如<入门手册>的第一个小例子麻雀虽小五脏俱全:http://www.hightopo.com/guide/guide/core/beginners/e ...

  5. 百度地图、ECharts整合HT for Web网络拓扑图应用

    前一篇谈及到了ECharts整合HT for Web的网络拓扑图应用,后来在ECharts的Demo中看到了有关空气质量的相关报表应用,就想将百度地图.ECharts和HT for Web三者结合起来 ...

  6. ECharts+BaiduMap+HT for Web网络拓扑图应用

    前一篇谈及到了ECharts整合HT for Web的网络拓扑图应用,后来在ECharts的Demo中看到了有关空气质量的相关报表应用,就想将百度地图.ECharts和HT for Web三者结合起来 ...

  7. 矢量Chart图表嵌入HTML5网络拓扑图的应用

    使用 HT for Web (以下简称 HT)开发HTML5网络拓扑图的开发者有 Chart 需求的项目的时候,感觉很痛苦,HT 集成的 Chart 组件中,并不包含有坐标,在展现方面不是很直观,但是 ...

  8. 玩转JS插件系列

    说明:本系列文章只是通过学习JS插件源码来巩固自己的JS知识,不涉及任何商业目的,如有侵犯版权请尽快告知 一.UI 背景 对话框和灯箱 筛选及排序 反馈 弹出层 悬停 布局 图表 加载 圆边 滚动 标 ...

  9. ajaxfileupload.js插件结合一般处理文件实现Ajax无刷新上传

    先上几张图更直观展示一下要实现的功能.本功能主要通过Jquery ajaxfileupload.js插件结合ajaxUpFile.ashx一般应用程序处理文件实现Ajax无刷新上传功能,结合NPOI2 ...

随机推荐

  1. opera mini 改服

    opera mini 改服 下载 opera 和 opera mini ftp://ftp.opera.com/pub/opera/android/mini/ ftp://ftp.opera.com/ ...

  2. worktools-git 工具的使用总结(知识点累积)

    1.用简单列表的方式查看提交记录git log --pretty=online zhangshuli@zhangshuli-MS-:~/myGit$ git log --pretty=oneline ...

  3. var和ES6的let

    来源自:http://www.jstips.co/zh_cn/javascript/keyword-var-vs-let/ 特此做个笔记 概述 通过 var 定义的变量,它的作用域是在 functio ...

  4. JS match方法的返回数据的探究

    match方法是JS的字符串方法,详细说明可以看MDN的说明. 如果正则表达式匹配成功的话,match方法会返回一个数组,而数组里的数据有两种形式,对应着匹配方式:全局匹配与非全局匹配. 1. 全局匹 ...

  5. 【MongoDB】在windows平台下mongodb的分片集群(六)

    在本篇博客中我们主要讨论下博客的管理.因为已经在前面五篇中写了具体的实例,因此这里就不再举例说明. 一.监控 分片集群是整个体系中比較复杂的一块,因此更应该须要监控. 主要命令: serverstat ...

  6. XAMPP各个版本配置

    XAMPP各个版本配置 http://code.stephenmorley.org/articles/xampp-version-history-apache-mysql-php/ XAMPP  Ap ...

  7. ajax对服务端发送请求

    //兼容处理获取ajax对象 var req = ''; if (window.XMLHttpRequest)    req = new XMLHttpRequest(); else    req = ...

  8. [Spark源代码剖析] DAGScheduler划分stage

    转载请标明出处:http://blog.csdn.net/bigbigdata/article/details/47293263 本文基于Spark 1.3.1 先上一些stage相关的知识点: DA ...

  9. PHP路由技术的原理与实践

    0x00 路由实现原理 用户通过指定的URL范式对后台进行訪问.URL路由处理类进行处理后.转发到逻辑处理类,逻辑处理类将请求结果返回给用户. 约定URL范式和规则 约定一套自己喜欢的,对搜索引擎友好 ...

  10. Codeforces Round 363 Div. 1 (A,B,C,D,E,F)

    Codeforces Round 363 Div. 1 题目链接:## 点击打开链接 A. Vacations (1s, 256MB) 题目大意:给定连续 \(n\) 天,每天为如下四种状态之一: 不 ...