JQuery.Gantt是一个开源的基于JQuery库的用于实现甘特图效果的可扩展功能的JS组件库。  

<link rel="stylesheet" href="css/style.css" />
<script src="js/jquery-1.7.min.js"></script>
<script src="js/jquery.fn.gantt.js" charset ="GB2312"></script>
<script src="js/jquery.cookie.js"></script> 
 在需要显示甘特图的地方加入以下这个div。
<div class="gantt"></div>
 
组件配置
Gantt 配置
$(".selector").gantt({ source:"ajax/data.json", scale:"weeks", minScale:"weeks", maxScale:"months", onItemClick:function(data){ alert("Item clicked - show some details");}, onAddClick:function(dt, rowId){ alert("Empty space clicked - add an item!");}, onRender:function(){ console.log("chart rendered");}});
参数 默认值 接收类型
source null Array, String (url)
itemsPerPage 7 Number
months ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"] Array
dow ["S", "M", "T", "W", "T", "F", "S"] Array
navigate "buttons" String ("buttons","scroll")
scale "days" String
maxScale "months" String
minScale "hours" String
waitText "Please Wait..." String
onItemClick: function (data) { return; } 有数据范围内的点击事件
onAddClick function (dt, rowId) { return; } 无数据范围内的点击事件
onRender function () { return; } 渲染事件
useCookie false 如果需要使用cookie则需要引用JS脚本文件:
jquery.cookie.js 
scrollToToday true Boolean
Source 配置
source:[{ name:"Example", desc:"Lorem ipsum dolor sit amet.", values:[...]}]
参数 默认值 接收类型 解释
name null String 每一行最左侧的一列以粗体显示
desc null String 每一行左侧第二列
values null Array 甘特图日期范围项
Value 配置
values:[{ to:"/Date(1328832000000)/",from:"/Date(1333411200000)/", desc:"Something", label:"Example Value", customClass:"ganttRed", dataObj: foo.bar[i]}]
参数 接收类型 解释
to String (Date) 结束时间,以毫秒为换算单位
from String (Date) 开始时间,以毫秒为换算单位
desc String 鼠标悬停显示文本
label String 甘特项显示文本
customClass String 甘特项的自定义class
dataObj All 一个直接应用于甘特项的数据对象

代码说明
jquery.cookie.js
     用于cookie管理,如果需要在甘特图中使用cookie则需要在页面中引用该js文件,否则不需要引用。
jquery.fn.gantt.js
     JQuery.Gantt组件的核心脚本文件,所有的甘特图功能代码都在这个文件中。
     代码结构解析:
    $.fn.gantt = function (options):甘特图部件对象
        基础设置项
            cookieKey:cookie的键
            scales:时间范围的级别
            settings:部件设置集
                source:数据源
                itemsPerPage:分页的每页数据行数
                months:列头处月份名称
                dow:列头处星期名称
                startPos:默认开始位置日期
                navigate:底部导航,buttons为按钮式的,scroll为滑块式的
                scale:甘特图每一列的时间范围
                useCookie:是否使用cookie,如果使用需要引用jquery.cookie.js
                maxScale:最大时间范围
                minScale:最小时间范围
                waitText:等待提示文本
                onItemClick:有数据范围内点击事件
                onAddClick:无数据范围内点击事件
                onRender:渲染事件
                scrollToToday:设置是否滚动到今天
        选择器方法(a:元素,i:索引,m:值): $.extend($.expr[":"], {}); findday:以毫秒为时间单位匹配一个指定的日期
            findweek:以毫秒为时间单位匹配一个指定的周
            findmonth:以毫秒为时间单位匹配一个指定的月
        日期原型 Date.prototype.getWeekId:获取weekid用于标识week的div的id特性,返回字符串,格式为dh-YYYY-WW,其中的ww是一年中的第几周 Date.prototype.genRepDate:按部件设置属性中scale的值获取时间范围,以秒为时间单位 Date.prototype.getDayOfYear:获取日期在一年中的第几天 Date.prototype.getWeekOfYear:获取日期在一年中的第几周 Date.prototype.getDaysInMonth:获取日期所在月份的天数 Date.prototype.hasWeek:如果日期驻留在一周的边界,返回真 Date.prototype.getDayForWeek:返回一周的开始日期的日期对象
        Grid管理器(负责导航和渲染):core
            elementFromPoint:获取位于指定点的最高处的元素
            create:创建图表
            init:初始化视图,计算行数、页数、可见的开始时间与结束时间
            render:渲染grid
            leftPanel:创建左侧Panel
            dataPanel:创建右侧数据Panel
            rightPanel:创建右侧头部Panel
            navigation:导航
            createProgressBar:创建进度条
            markNow:移除”wd“class添加”today“class到当前的scale模式
            fillData:填充图表,解析数据并填充到panel
            navigateTo:导航到
            navigatePage:导航到指定的页面
            zoomInOut:变更空间轴级次(zoom)
            mouseScroll:通过鼠标移动图表
            wheelScroll:通过鼠标滚轮移动图表
            sliderScroll:通过滑块控制图表
            scrollPanel:更新滚动panel的margin
            synchronizeScroller:同步滚动
            repositionLabel:重新定位数据标签
            waitToggle:切换等待
        实用功能:tools
            getMaxDate:返回最大可能的日期在scale值的标准下
            getMinDate:返回最小可能的日期在scale值的标准下
            parseDateRange:返回一个日期对象数组介于from和to之间,时间单位为天
            parseTimeRange:返回一个日期对象数组介于from和to之间,时间单位为小时
            parseWeeksRange:返回一个日期对象数组介于from和to,时间单位为周
            parseMonthsRange:返回一个日期对象数组介于from和to,时间单位为月
            dateDeserialize:从字符串反序列化成日期
            genId:用日期创建ID
            getCellSize:获取当前单元格的大小
            getRightPanelSize:获取当前右panel的大小
            getPageHeight:获取当前页面的高度
            getProgressBarMargin:获取当前进度条的margin大小

选项扩展:this.each(function () {};);

原文来自http://www.51diaodu.com/doc/1456

jquery甘特图开发包下载地址http://www.51diaodu.com/pdt/1442

DEMO:http://www.51diaodu.com/demo/1442/SampleBrowser.htm

转载于:https://blog.51cto.com/kjbky/1569784

jquery 甘特图开发指南相关推荐

  1. RadiantQ jQuery甘特图,资源分配单元计算的支持

    RadiantQ jQuery甘特图,资源分配单元计算的支持 您现在可以在 Microsoft Project XML 中保存多个前置值. 添加了仅打印甘特表的功能. 改进了对 Safari 和 Ap ...

  2. Flex框架-甘特图开发

    2012年,刚刚毕业参加的工作的时候,在公司里面学习了Flex技术.由于本人是做Java的,Flex中的ActionScript语法和Java挺类似,所以学起来还比较顺手的.大概做了一年多和Flex相 ...

  3. Jquery 甘特图 插件 jQuery.Gantt

    http://taitems.github.io/jQuery.Gantt/ 参数 默认值 类型 说明 source null Array, String (url) 数据源:json数组或者返回js ...

  4. 前端甘特图组件开发(一)

    背景 工作中需要在网页上实现甘特图,以展示进度数据.通过网上调研相关项目,找到一款 dhtmlx-gantt 组件,在低程度上满足项目需求,但在部分定制功能(如时间轴自定义.编辑弹窗样式风格等)并不能 ...

  5. JQuery.Gantt(甘特图) 开发指南

    概述      JQuery.Gantt是一个开源的基于JQuery库的用于实现甘特图效果的可扩展功能的JS组件库. 源码下载 http://download.csdn.net/detail/aaak ...

  6. 《jQuery UI 开发指南》——1.3 什么是CSS主题

    本节书摘来自异步社区<jQuery UI开发指南>一书中的第1章,第1.3节,作者:[美]Eric Sarrion 译者:罗晴明 ,包勇明更多章节内容可以访问云栖社区"异步社区& ...

  7. 《jQuery EasyUI开发指南》——10.4 迭代开发

    本节书摘来自异步社区<jQuery EasyUI开发指南>一书中的第10章,第10.4节,作者:王波著,更多章节内容可以访问云栖社区"异步社区"公众号查看 10.4 迭 ...

  8. vue 改变domclass_基于 vue 开发甘特图组件的心路历程(兼设计分享)

    语雀原文 有更好的排版体验~ 这篇文章主要讲述笔者开发 v-gantt 甘特图组件的经过. 起源 公司项目有个甘特图的需求. 笔者考察了世面上 常见的甘特图组件 后,本着 我上我也行 的心态,以及考虑 ...

  9. 易度甘特图的功能介绍和开发手册

         易度甘特图发布1.5版本! 易度甘特图是当前WEB开发中领先的甘特图解决方案. 它是使用Javascript开发的,实现了与微软 Project 甘特图一致的界面和功能,可广泛应用于 项目管 ...

最新文章

  1. java poi excel读写_JAVA-POI操作Excel读写
  2. 手机实名制的一个应用,电信行业的一个可改进之处
  3. 实现全屏轮播,并且轮播div中的文字盒子一直自动垂直居中
  4. 代码重构 防火墙 相关知识
  5. UITextField 输入结束后的收起小键盘的方式
  6. 电力设计手册_电气设计负荷计算方法
  7. 安卓Service完全解析(中)
  8. What's new document web part for SharePoint v1.1 [Free]
  9. 机器学习之监督学习(四)——贝叶斯分类器
  10. 一元、二元、三元逻辑运算符
  11. JTXQ、JTT部标模拟终端使用说明 --2 JTT808协议菜单
  12. mac Error: EACCES: permission denied, mkdir './cache'
  13. 产品经理常用的19类50+工具软件盘点
  14. 2018,来年只剩追忆
  15. My Seventy-seventh Page - 零钱兑换 - By Nicolas
  16. apfs扩容_MacBook Air 2015 换硬盘心得
  17. oracle dba 培训教程 第11章 索引的管理与维护
  18. deficit记忆_总算懂得单词every分析记忆方法
  19. 重头系统的学习,不会咱就学!2014.6.18
  20. vb.net电子时钟实例

热门文章

  1. Android TV 开发 (1)
  2. 解决atom安装emmet的问题
  3. mysql - binlog主从复制
  4. 【转】JavaScript常用代码书写规范
  5. 从零学React Native之05混合开发
  6. [linux/ unix] 查看占用端口的 进程ID 的区别
  7. 同步、异步、阻塞、非阻塞IO
  8. Innodb 与自增长auto_increment
  9. 哈工大威海计算机考研招生简章,2017年哈尔滨工业大学(威海)考研专业目录及考试科目...
  10. 忽略证书_中专考生注意!忽略这一点,四科全过也拿不到执业药师证书!