一个简单易用的jQuery插件,用于从JavaScript对象中呈现可拖动、可调整大小和启用ajax的每日计划。
1.在html页面上包含所需的jQuery和jQuery UI。
<script src="jquery.min.js"></script> <script src="jquery-ui.min.js"></script> <link rel="stylesheet"href="jquery-ui.css">
2.在jQuery库之后包含jQuery调度插件的样式表和JavaScript。
<script src="jq.schedule.js"></script> <link rel="stylesheet" href="style.css">
3.使用自定义事件呈现基本时间表。
jQuery("#schedule").timeSchedule({
rows : {
'1' : {
title : 'Title Area',
subtitle : 'Description',
schedule:[{
start:'09:00',
end:'12:00',
text:'Text Area',
data:{}
},{
start:'11:00',
end:'14:00',
text:'Text Area',
data:{}
}]
},},
});
4.自定义选项。
// scheduled events
rows : {},
// classname
className: 'jq-schedule',
// schedule start time(HH:ii)
startTime: "07:00",
// schedule end time(HH:ii)
endTime: "21:00",
// width(px)
widthTimeX: 25,
// cell timestamp example 10 minutes
widthTime: 60 * 10,
// height(px)
timeLineY: 60,
// options for time slots
timeLineBorder:1,
timeBorder:1, // border width
timeLinePaddingTop:0,
timeLinePaddingBottom:0,
headTimeBorder:1, // time border width
// data width
dataWidth:160,
// scrollbar (px)
verticalScrollbar: 0,
// width to move all schedules to the right of the clicked time cell
bundleMoveWidth: 1,
// draggable?
draggable: true,
// resizable?
resizable: true5.事件处理程序。
jQuery("#schedule").timeSchedule({
onInitRow: : function(node, data){
// do something
},
onChange: function(node, data){
// do something
},
onClick: : function(node, data){
// do something
},
onAppendRow: : function(node, data){
// do something
},
onAppendSchedule: : function(node, data){
// do something
},
onScheduleClick: : function(node, time, timeline){
// do something
}
});
6.API方法。
// get row data
$("#schedule").timeSchedule('timelineData');
// get schedule data
$("#schedule").timeSchedule('scheduleData');
// clear all data
$("#schedule").timeSchedule('resetData');
// clear all data and rows
$("#schedule").timeSchedule('resetRowData');
// add row
$("#schedule").timeSchedule('addRow', timeline, {
title : 'Title Area',
schedule:[
{
start: '09:00',
end: '12:00',
text: 'Text Area',
data: {}
}
]
});
// add data
$("#schedule").timeSchedule('addSchedule', timeline, {
start: start,
end: end,
text: 'Insert Schedule',
data: {}
});
// enable/disable draggable and resizable
$("#schedule").timeSchedule('setDraggable', true);
$("#schedule").timeSchedule('setResizable', false);
2022-03-17
2020-09-27
2020-03-16
2020-03-15
2020-03-14
2020-03-10
2020-02-22
2020-02-01
2019-12-24
2019-12-15
2019-12-15
2019-01-20