[Java教程]JQuery.Gantt(甘特图)开发

0 2015-06-09 00:00:07

一、简介

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

二、前端页面

2.1 资源引用

首先需要将下载到的源码中的CSS、IMG、JS等资源放入我们自己的项目中,然后在我们自己的页面中引用需要的资源文件。

CSS样式文件

JS脚本文件

//任务甘特图中没有使用cookies所以不需要引用jquery.cookie.js。

备注:

1.jquery.cookie.js  用于cookie管理,如果在甘特图中使用cookie则要在页面 中引用该js文件,否则不需要。任务甘特图中没有使用cookies所以不需要引用

2.jquery.fn.gantt.js  JQuery.Gantt组件的核心脚本文件,所有的甘特图功能代码都在这个文件中。

3.如果需要甘特图中显示中文,则需要在js文件引用中加上charset特性并设置为GB2312,否则中文内容将显示为乱码。

2.2 页面布局

在需要显示甘特图的地方加入以下这个div。

三、组件配置

3.1 Gantt 配置

$(".selector").gantt({

source:"ajax/task.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");}});参数默认值接收类型

sourcenullArray, String (url)

itemsPerPage7Number

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; }有数据范围内的点击事件

onAddClickfunction (dt, rowId) { return; }无数据范围内的点击事件

onRenderfunction () { return; }渲染事件

useCookiefalse如果需要使用cookie则需要引用JS脚本文件:

jquery.cookie.js

scrollToTodaytrueBoolean

3.2 Source 配置

source:[{

name:"Example",

desc:"Lorem ipsum dolor sit amet.",

values:[...]}]参数默认值接收类型备注

namenullString每一行最左侧的一列以粗体显示

descnullString每一行左侧第二列

valuesnullArray甘特图日期范围项

3.3 Value 配置

values:[{

to:"/Date(1328832000000)/",from:"/Date(1333411200000)/",

desc:"Something",

label:"Example Value",

customClass:"ganttRed",

dataObj: foo.bar[i]}]参数接收类型备注

toString (Date)结束时间,以毫秒为换算单位

fromString (Date)开始时间,以毫秒为换算单位

descString鼠标悬停显示文本

labelString甘特项显示文本

customClassString甘特项的自定义class

dataObjAll一个直接应用于甘特项的数据对象

3.4 代码结构解析:

$.fn.gantt = function (options):甘特图部件对象

基础设置项

cookieKey:cookie的键

scales:时间范围的级别 例如:["hours", "days", "weeks", "months"]

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.shaoqun.com/a/119608.html

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:admin@shaoqun.com。

jquery

0

java 甘特图_[Java教程]JQuery.Gantt(甘特图)开发相关推荐

  1. java this.val$_[Java教程]Jquery $(this).attr和$(this).val用法示例

    [Java教程]Jquery $(this).attr和$(this).val用法示例 0 2017-08-17 17:00:11 以下是个人心得整理,有兴趣朋友可以参考参考 $(this).attr ...

  2. java遮罩层_[Java教程]Jquery实现遮罩层

    [Java教程]Jquery实现遮罩层 0 2012-12-13 17:00:10 1.假设#main为页面body中的最外层Div标签 2.背景被遮罩后,显示的弹出窗(默认是不显示的,所包含的CSS ...

  3. jquery gantt 甘特图

    jquery gantt使用 一.简介 二.JQuery.Gantt 三.使用 四.功能改写 五.总结 一.简介 JQuery.Gantt是一个开源的基于JQuery库的用于实现甘特图效果的可扩展功能 ...

  4. java 性能 火焰图_性能调优工具-火焰图

    性能调优工具-火焰图 发布时间:2019-07-17 19:29, 浏览次数:402 前言 工具的进化一直是人类生产力进步的标志,合理使用工具能大大提高我们的工作效率,遇到问题时,合理使用工具更能加快 ...

  5. java小朋友猜拳_[Java教程]Java猜拳小游戏(剪刀、石头、布)

    [Java教程]Java猜拳小游戏(剪刀.石头.布) 0 2015-09-29 08:00:04 import java.util.Random;import java.util.Scanner;pu ...

  6. java 三维场景图_一个Java3D简单三维场景图,测试你的Java3D开发运行环境。

    保存文件,命名为UglyCube.java 这是个彩色六面体,可以用鼠标左键旋转,右键拖动,摁下滚轮前后移动缩放. 直接在命令行下转到文件目录,像普通java程序那样编译解释执行.用以测试Java3D ...

  7. java星空屏幕_[Java教程]窗口设置_星空网

    窗口设置 2016-04-13 0 /** * 这个是GUI的事例程序: * */ package w160412.wang.main;import java.awt.Color; import ja ...

  8. java取负数_[Java] 告别“CV 工程师”码出高效!(基础篇)

    作为一名资深的 CV 工程师,某天,当我再一次日常看见满屏的报错信息与键盘上已经磨的泛白的 Ctrl.C.V 这三个按键时,我顿悟了. 百度谷歌复制粘贴虽然很香,但是总是依靠前人种树,终会有一天失去乘 ...

  9. 项目计划表格甘特图_项目管理:什么是甘特图?

    什么是甘特图? 许多人从未听说过甘特图.简而言之,甘特图是随时间计划的任务的可视视图.甘特图用于计划各种规模的项目,它们是显示计划在特定日期完成的工作的有用方法.它们还可以帮助您在一个简单的视图中查看 ...

  10. java控制语句练习题_[Java初探实例篇02]__流程控制语句知识相关的实例练习

    本例就流程控制语句的应用方面,通过三个练习题来深入学习和巩固下学习的流程控制语句方面的知识,设计到,if条件判断语句,switch多分支语句,for循环语句及其嵌套多层使用,while循环语句. 练习 ...

最新文章

  1. g intel linux 汇编_Linux 下的C和Intel 汇编语言混用
  2. redis 突然大量逐出导致读写请求block
  3. 《101 Windows Phone 7 Apps》读书笔记-PASSWORDS SECRETS
  4. ThinkPHP 3.2公共类库、应用类库ThinkPHP/Library讲解
  5. linux脚本转换exe,Ps1 To Exe(powershell脚本转换EXE工具) V3.0.6 官方版
  6. 在Windows下不使用密码远程登陆Linux
  7. @datetimeformat注解使用 晚了8个小时_Java注解,就是那么简单
  8. SQL读写CSV文件
  9. 2009年12月8号漕宝路电信机房真是电信封的吗?
  10. Android - 资源(resource)转换为String
  11. nginx 过滤请求URL参数及重定向
  12. Unix编程艺术-原则
  13. M1 芯片Macbook pro连接支持AirPrint的佳能打印机
  14. uni-icons在支付宝小程序中图标不显示
  15. LOJ 6437 [PKUSC 2018] PKUSC
  16. 电脑怎么用计算机打开指令,命令提示符怎么用 命令提示符快捷键打开使用技巧详解...
  17. FineReport报表设计基础
  18. 牛客网练习赛36 Ribbit的数列 分块
  19. 时光金科php_重庆金科博翠宸章 | ACA麦垦景观
  20. 使用Typora列表嵌套列表,回车无法返回上一级列表的状态

热门文章

  1. 迅捷word转换成pdf转换器 4.1 官方版
  2. ppt转换成pdf软件免费版
  3. 怎样用python控制别人的电脑_python实现远程控制电脑
  4. 层次分析法详细讲解(小白必看电脑查看)
  5. 真实可行的Python清屏命令
  6. python清屏失败,如何在 Python 中清屏
  7. 【nginx系列】深入理解nginx原理
  8. JanusGraph组件对应版本
  9. Eclipse + keil 使用教程
  10. mybatis3的中文官方文档