我的fullcalendar3.0笔记

来源:互联网 发布:大学生找网络兼职 编辑:程序博客网 时间:2024/04/29 12:47

官方文档地址:https://fullcalendar.io/docs/

 



 

 

fullcalendar做日程管理视图挺好的,至今还在更新维护,前两个月还发布了3.0版本,说明还有资源在维护,如果要选择免费开源的产品,可以选择这款。 

 

Html代码  收藏代码
  1. <!DOCTYPE html>  
  2. <html>  
  3.   
  4. <head>  
  5.     <meta charset='utf-8' />  
  6.     <link href='../fullcalendar.css' rel='stylesheet' />  
  7.     <link href='../fullcalendar.print.css' rel='stylesheet' media='print' />  
  8.     <script src='../lib/moment.min.js'></script>  
  9.     <script src='../lib/jquery.min.js'></script>  
  10.     <script src='../fullcalendar.min.js'></script>  
  11.     <script>  
  12.     /**Demo for 3.0.1,It's different with version 2.*. */  
  13.     $(document).ready(function() {  
  14.           
  15.         $('#calendar').fullCalendar({  
  16.             /**  
  17.              *  默认显示的视图  
  18.              *  month       一页显示一月, 日历样式  
  19.                 basicWeek   一页显示一周, 无特殊样式  
  20.                 basicDay    一页显示一天, 无特殊样式  
  21.                 agendaWeek  一页显示一周, 显示详细的24小时表格  
  22.                 agendaDay   一页显示一天, 显示详细的24小时表格  
  23.                 listYear    年列表(V3.*支持)  
  24.                 listMonth   月列表(V3.*支持)  
  25.                 listWeek    周列表(V3.*支持)  
  26.                 listDay     日列表(V3.*支持)  
  27.              */  
  28.             defaultView:"agendaWeek",   //进入组件默认渲染的视图,默认为month  
  29.             customButtons: {            //自定义header属性中按钮[customButtons与header并用]  
  30.                 myCustomButton: {  
  31.                 text: 'custom!',  
  32.                     click: function() {  
  33.                         alert('clicked the custom button!');  
  34.                     }  
  35.                 }  
  36.             },  
  37.             header: {  
  38.                 left: 'prev,next today',            //上一页、下一页、今天  
  39.                 center: 'title myCustomButton',     //居中:时间范围区间标题  
  40.                 right: 'month,agendaWeek,agendaDay,listWeek'    //右边:显示哪些视图  
  41.             },  
  42. //          height : 500,           //组件高度,默认aspectRatio即纵横比;parent父容器大小;auto自动不带滚动条;支持数字和函数返回像素;支持$('#calendar').fullCalendar('option', 'height', 700);  
  43. //          contentHeight : 200,    //组件中的内容高度,默认aspectRatio即纵横比;auto自动不带滚动条;支持数字和函数返回像素;支持$('#calendar').fullCalendar('option', 'contentHeight', 700);  
  44. //          aspectRatio : 2,        //宽度:高度 比例,默认1.35,可自定义  
  45. //          handleWindowResize : false, //组件随浏览器高宽变化自适应,默认true支持自适应  
  46. //          windowResizeDelay : 200,//窗体自适应延迟多少毫秒  
  47.             firstDay : 1,           //视图从每周几开始,默认0为周日,1为周1,2为周2,依此类推  
  48.             isRTL : false,          //从右到左显示模式,默认false  
  49. //          weekends : false,       //是否在视图中显示周六、周日,默认true  
  50. //          hiddenDays: [ 1,5 ],    //隐藏星期1、星期5  
  51.             fixedWeekCount : false, //月视图下,显示6周(不够的显示下个月的)true;默认true  
  52.             weekNumbers : true,     //是否在视图左边显示这是第多少周,默认false  
  53. //          businessHours : {}      //设置哪些时间段重点标记颜色  
  54.             eventLimit: true,       //数据条数太多时,限制各自里显示的数据条数(多余的以“+2more”格式显示),默认false不限制,支持输入数字设定固定的显示条数  
  55. //          eventLimitClick : "day",//接eventLimit属性,多余的内容点击事件,默认有一套弹窗格式,支持跳转到不同视图、也支持自定义function,详情见官方文档  
  56.             viewRender : function(view,element){//在视图被渲染时触发(切换视图也触发) 参数view为视图对象,参数element为Jquery的视图Dom  
  57.                 console.log("↓↓↓viewRender↓↓↓");  
  58.                 console.log("name:"+view.name+"|title:"+view.title+"|start:"+view.start+"|end:"+view.end+"|intervalStart:"+view.intervalStart+"|intervalEnd:"+view.intervalEnd);  
  59.             },  
  60. //          viewDestroy : function(view, element){}, //类似viewRender,在视图被销毁时触发  
  61.             dayRender : function(date, cell){//日期格式Render钩子函数(我没理解清楚)  
  62.                 console.log("↓↓↓dayRender↓↓↓");  
  63.                 console.log(date);  
  64.                 console.log(cell);  
  65.             },  
  66.             windowResize : function(){//浏览器窗体变化时触发  
  67.                 console.log("---windowResize---");  
  68.             },  
  69. //          allDaySlot : false,   //视图在周视图、日视图顶部显示“全天”信息,默认true显示全天  
  70.             allDayText : "全天",            //自定义全天视图的名称  
  71.             slotDuration : "01:00:00",      //一格时间槽代表多长时间,默认00:30:00(30分钟)  
  72.             slotLabelFormat : "H(:mm)a",    //日期视图左边那一列显示的每一格日期时间格式  
  73.             slotLabelInterval : "02:00:00", //日期视图左边那一列多长间隔显示一条日期文字(默认跟着slotDuration走的,可自定义)  
  74.             snapDuration : "05:00:00",      //其实就是动态创建一个日程时,默认创建多长的时间块  
  75. //          scrollTime : "06:00:00",        //多远开始往下滚动,默认6小时,这个没看懂  
  76. //          minTime : "02:00:00",           //周/日视图左边时间线显示的最小日期,默认00:00:00  
  77. //          maxTime : "08:00:00",           //周/日视图左边时间线显示的最大日期,默认24:00:00  
  78.             slotEventOverlap : false,       //相同时间段的多个日程视觉上是否允许重叠,默认true允许  
  79. //          listDayFormat : false,          //listview视图下,每天的分割区,[左边]的标题自定义,false表示无标题  
  80. //          listDayAltFormat : false,       //listview视图下,每天的分割区,[右边]的标题自定义,false表示无标题  
  81.             noEventsMessage : "L没数据啊",   //listview视图下,无数据时显示提示  
  82.             defaultDate  : '2016-10-13',    //默认显示那一天的日期视图  
  83.             nowIndicator : true,            //周/日视图中显示今天当前时间点(以红线标记),默认false不显示  
  84. //          locale :  "zh-cn",              //国际化,前提引用lang-all.js,参见官方demo-->languages.html  
  85. //          timeFormat :  "h:mm",           //全局的日期显示格式(自定义成如12:00或12am等)  
  86. //          columnFormat : "",              //顶部日期显示格式'ddd' like 'Mon','ddd M/D' like 'Mon 9/7','dddd' like 'Monday'  
  87. //          titleFormat : "",               //顶部title区域格式化  
  88.             buttonText : {today:'今天',month:'月',week:'周',day:'日',listWeek:'列表'},  //对应顶部操作按钮的名称自定义  
  89.             monthNames : ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"], //月份自定义命名  
  90.             monthNamesShort: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"], //月份缩略命名(英语比较实用:全称January可设置缩略为Jan)  
  91.             dayNames: ["周日", "周一", "周二", "周三", "周四", "周五", "周六"],       //同理monthNames  
  92.             dayNamesShort: ["周日", "周一", "周二", "周三", "周四", "周五", "周六"],  //同理monthNamesShort  
  93.             weekNumberTitle : "周",         //周的国际化,默认为"W"  
  94. //          displayEventTime : false,       //每一个日程块中是否显示时间,默认true显示  
  95. //          displayEventEnd : true,         //是否显示日程块中的“结束时间”,默认true,如果false则只显示开始时间  
  96.             eventLimitText  : "更多",       //当一块区域内容太多以"+2 more"格式显示时,这个more的名称自定义(应该与eventLimit: true一并用)  
  97.             dayPopoverFormat : "YYYY年M月d日", //点开"+2 more"弹出的小窗口标题,与eventLimitClick可以结合用  
  98.             navLinks : true,                // “xx周”是否可以被点击,默认false,如果为true则周视图“周几”被点击之后进入日视图。本地测试:没什么效果  
  99. //          navLinkDayClick: function(date, jsEvent) { //依赖navLinks : true , 点击顶部“日”时触发  
  100. //              console.log("↓↓↓navLinkDayClick↓↓↓");  
  101. //              console.log('day', date.format()); // date is a moment  
  102. //              console.log('coords', jsEvent.pageX, jsEvent.pageY);  
  103. //              return true;  
  104. //          },  
  105. //          navLinkWeekClick: function(weekStart, jsEvent) { //依赖navLinks : true , 点击顶部“周”时触发  
  106. //              console.log("↓↓↓navLinkWeekClick↓↓↓");  
  107. //              console.log('week start', weekStart.format()); // weekStart is a moment  
  108. //              console.log('coords', jsEvent.pageX, jsEvent.pageY);  
  109. //          },  
  110.             dayClick: function(date, jsEvent, view) {//空白的日期区,单击时触发  
  111.                 console.log("↓↓↓dayClick↓↓↓");  
  112.                 console.log('Clicked on: ' + date.format());  
  113.                 console.log('Coordinates: ' + jsEvent.pageX + ',' + jsEvent.pageY);  
  114.                 console.log('Current view: ' + view.name);  
  115.                 // change the day's background color just for fun  
  116.                 $(this).css('background-color', 'red');  
  117.             },  
  118.             eventClick: function(calEvent, jsEvent, view) {//日程区块,单击时触发  
  119.                 console.log("↓↓↓eventClick↓↓↓");  
  120.                 console.log('Event: ' + calEvent.title);  
  121.                 console.log('Coordinates: ' + jsEvent.pageX + ',' + jsEvent.pageY);  
  122.                 console.log('Current view: ' + view.name);  
  123.                 // change the day's background color just for fun  
  124.                 $(this).css('background-color', 'green');  
  125.                 return false;  //return false可以阻止点击后续事件发生(比如event中的url跳转事件)  
  126.             },  
  127.             eventMouseover: function(calEvent, jsEvent, view){//鼠标在日程区块上时触发  
  128.                 $(this).css('background-color', 'gray');  
  129.             },  
  130.             eventMouseout: function(calEvent, jsEvent, view){//鼠标从日程区块离开时触发  
  131.                 $(this).css('background-color', 'yellow');  
  132.             },  
  133.             selectable: true,           //允许用户可以长按鼠标选择多个区域(比如月视图,可以选中多天;日视图可以选中多个小时),默认false不能选择多区域的  
  134.             selectHelper: true,         //接selectable,周/日视图在选择时是否预先画出“日程区块”的样式出来  
  135.             unselectAuto : true,        //是否点击页面上的其他地方会导致当前的选择被清除,默认true  
  136.             unselectCancel : "",        //一种方法来指定元素,会忽略unselectauto选项,默认''  
  137.             selectOverlap : true,       //确定用户是否被允许选择被事件占用的时间段,默认true可占用时间段  
  138. //          selectConstraint : ,        //限制用户选择指定时间段的日程数据:an event ID, "businessHours", object  
  139.             selectAllow : function(selectInfo){ //精确的编程控制用户可以选择的地方,返回true则表示可选择,false表示不可选择  
  140.                 console.log("↓↓↓selectConstraint↓↓↓");  
  141.                 console.log("start:"+selectInfo.start+"|end:"+selectInfo.end+"|resourceId:"+selectInfo.resourceId);  
  142.                 return true;  
  143.             },  
  144.             select: function(start, end,jsEvent,view) { //点击空白区域/选择区域内容触发  
  145.                 console.log("↓↓↓select↓↓↓");  
  146.                 console.log("start:"+start+"|end:"+end+"|jsEvent:"+jsEvent+"|view:"+view.title);  
  147.                 var title = prompt('Event Title:');  
  148.                 var eventData;  
  149.                 if (title) {  
  150.                     eventData = {  
  151.                         title: title,  
  152.                         start: start,  
  153.                         end: end  
  154.                     };  
  155.                     $('#calendar').fullCalendar('renderEvent', eventData, true); // stick? = true  
  156.                 }  
  157.                 $('#calendar').fullCalendar('unselect');  
  158.             },  
  159.             unselect : function(view, jsEvent){//选择操作取消时触发  
  160.                 console.log("↓↓↓unselect↓↓↓");  
  161.                 console.log("view:"+view);  
  162.             },  
  163. /**Event Object配置start */  
  164. //          allDayDefault : null,       //是否默认将日程全部显示在“全天”里面(boolean or null),默认为undefined,即根据event时间值智能判断,这个属性太强悍,不敢用  
  165. //          startParam:"start",         //Event Object中定义[开始时间]的变量,默认是start,可自定义变量名以防冲突  
  166. //          endParam:"end",             //Event Object中定义[结束时间]的变量,默认是end,可自定义变量名以防冲突  
  167. //          timezoneParam : "timezone", //Event Object中定义[时区]的变量,默认是本地时区,可自定义变量名以防冲突,可更改时区如( "America/Chicago" or "UTC")  
  168.             lazyFetching : true,        //是否启用懒加载技术--即只取当前条件下的视图数据,其它数据在切换时触发,默认true只取当前视图的,false是取全视图的  
  169.             defaultTimedEventDuration : "02:00:00",     //在Event Object中如果没有end参数时使用,如start=7:00pm,则该日程对象时间范围就是7:00~9:00  
  170.             defaultAllDayEventDuration : { days: 1 },  //默认1天是多长,(有的是采用工作时间模式,所以支持自定义)  
  171. //          forceEventDuration : false,     //诉老夫无能为力,愣是没搞懂什么意思,默认false  
  172. //          eventDataTransform : function(eventData){return [events...]}, //当从第三方取数不规则时(如下面的JSON或google),可通过此钩子函数进行数据整理,转换为fullcalendar识别的event object  
  173.             loading : function(isLoading, view){ //视图数据加载中、加载完成触发  
  174.                 console.log("↓↓↓loading↓↓↓");  
  175.                 if(isLoading == true){  
  176.                     console.log("view:"+view+",开始加载");  
  177.                 }else if(isLoading == false){  
  178.                     console.log("view:"+view+",加载完成");  
  179.                 }else{  
  180.                     console.log("view:"+view+",除非天塌下来否则不会进这个分支");  
  181.                 }  
  182.             },  
  183. //          nextDayThreshold : "09:00:00",  //当一个事件的结束时间跨越到另一天,最短的时间,它必须为它的渲染,如果它在这一天。  
  184.             eventOrder : "title",           //多个相同的日程数据排序方式,String / Array / Function, 默认值: "title"  
  185.             eventRender : function(event, element, view) {          //当Event对象开始渲染时触发  
  186.                 console.log("eventRender():"+event.title);  
  187.             },  
  188. //          eventAfterRender : function( event, element, view ) { } //当Event对象结束渲染时触发  
  189.             eventAfterAllRender : function(view){console.log("eventAfterAllRender();");},   //当所有Event对象渲染完成时触发  
  190. //          eventDestroy : function( event, element, view ) { }     //一个Event DOM销毁时触发  
  191.   
  192. /**Event Object配置end */  
  193.   
  194. /**Event Rendering配置(一些样式等配置) start*/  
  195. //          eventColor: '#378006',      //不解释,所有的日程区块生效,如要对指定数据源生成参见EventSource,如要对指定Event生效,参见EventObject  
  196. //          eventBackgroundColor:"",    //同上,不解释  
  197. //          eventBorderColor:"",        //同上,不解释  
  198. //          eventTextColor:""           //同上,不解释  
  199.   
  200. /**Event Rendering配置 end*/  
  201.   
  202.             editable: true,                 //支持Event日程拖动修改,默认false  
  203.             eventStartEditable : true,      //Event日程开始时间可以改变,默认true,如果是false其实就是指日程块不能随意拖动,只能上下拉伸改变他的endTime  
  204.             eventDurationEditable : false,  //Event日程的开始结束时间距离是否可以改变,默认true,如果是false则表示开始结束时间范围不能拉伸,只能拖拽  
  205. //          dragRevertDuration : 500,       //拖拽取消恢复花费时间,单位毫秒,这个就用默认的差不多了  
  206.             dragOpacity:0.2,                //拖拽时不透明度,0.0~1.0之间,数字越小越透明  
  207.             dragScroll : true,              //是否在拖拽时自动移动容器,默认true  
  208.             eventOverlap : true,            //拖拽时是否重叠  
  209.             eventConstraint : {     //限制拖拽拖放的位置(即限制有些地方拖不进去):an event ID, "businessHours", object  
  210.                 start: '10:00',     // a start time (10am in this example)  
  211.                 end: '18:00',       // an end time (6pm in this example)  
  212.                 dow: [ 1, 2, 3, 4 ] // days of week. an array of zero-based day of week integers (0=Sunday)  (Monday-Thursday in this example)  
  213.             },  
  214.             longPressDelay : 1000,  //面向可touch设备(如移动设备),长按多少毫秒即可拖动,默认1000毫秒(1S)  
  215.             eventDragStart : function(event, jsEvent, ui, view){    //日程开始拖拽时触发  
  216.                 console.log("eventDragStart():"+event.title);  
  217.             },  
  218.             eventDragStop : function(event, jsEvent, ui, view){     //日程拖拽停止时触发  
  219.                 console.log("eventDragStop():"+event.title);  
  220.             },  
  221.             eventDrop : function(event, delta, revertFunc, jsEvent, ui, view){  //日程拖拽停止并且已经拖拽到其它位置了  
  222.                 console.log("eventDrop():"+event.title);  
  223.             },  
  224.             eventResizeStart : function( event, jsEvent, ui, view ) {       //日程大小调整开始时触发  
  225.                 console.log("eventResizeStart():"+event.title);  
  226.             },  
  227.             eventResizeStop : function(event, jsEvent, ui, view){           //日程大小调整停止时触发  
  228.                 console.log("eventResizeStop():"+event.title);  
  229.             },  
  230.             eventResize : function(event, delta, revertFunc, jsEvent, ui, view){    //日程大小调整完成并已经执行更新时触发  
  231.                 console.log("eventResize():"+event.title);  
  232.             },  
  233. /*          访问后台URL,动态返回JSON数据的形式,这种是直接集成了jQuery.ajax,其实并不灵活  
  234.             events:  {    
  235.                 url: '/myfeed.php',  
  236.                 type: 'POST',  
  237.                 data: {  
  238.                     custom_param1: 'something',  
  239.                     custom_param2: 'somethingelse'  
  240.                 },  
  241.                 error: function() {  
  242.                     alert('there was an error while fetching events!');  
  243.                 },  
  244.                 color: 'yellow',   // a non-ajax option  
  245.                 textColor: 'black' // a non-ajax option  
  246.             },  
  247. */  
  248. /*          第二种:基于function的数据获取,通常是在切换上一页、下一页、视图切换时触发,非常适合动态数据获取  
  249.             events: function(start, end, timezone, callback) {  
  250.             $.ajax({  
  251.                 url: 'myxmlfeed.php',  
  252.                 dataType: 'xml',  
  253.                 data: {  
  254.                     // our hypothetical feed requires UNIX timestamps  
  255.                     start: start.unix(),  
  256.                     end: end.unix()  
  257.                 },  
  258.                 success: function(doc) {  
  259.                     var events = [];  
  260.                     $(doc).find('event').each(function() {  
  261.                         events.push({  
  262.                             title: $(this).attr('title'),  
  263.                             start: $(this).attr('start') // will be parsed  
  264.                         });  
  265.                     });  
  266.                     callback(events);  
  267.                 }  
  268.             });  
  269.             },  
  270. */  
  271.             events: [//第三种:直接是数组的形式传入  
  272.                 {  
  273.                     title: 'All Day Event',  
  274.                     start: '2016-10-13'  
  275.                 },  
  276.                 {  
  277.                     title: 'Long Event',  
  278.                     start: '2016-10-07',  
  279.                     end: '2016-10-10'  
  280.                 },  
  281.                 {  
  282.                     id: 991,  
  283.                     title: 'Repeating Event',  
  284.                     start: '2016-10-09T16:00:00'  
  285.                 },  
  286.                 {  
  287.                     id: 999,  
  288.                     title: 'Repeating Event',  
  289.                     start: '2016-10-16T16:00:00'  
  290.                 },  
  291.                 {  
  292.                     title: 'Conference',  
  293.                     start: '2016-10-11',  
  294.                     end: '2016-10-13'  
  295.                 },  
  296.                 {  
  297.                     title: 'Meeting',  
  298.                     start: '2016-10-12T10:30:00',  
  299.                     end: '2016-10-12T12:30:00'  
  300.                 },  
  301.                 {  
  302.                     title: 'Lunch',  
  303.                     start: '2016-10-12T12:00:00'  
  304.                 },  
  305.                 {  
  306.                     title: 'Meeting',  
  307.                     start: '2016-10-12T14:30:00'  
  308.                 },  
  309.                 {  
  310.                     title: 'Happy Hour',  
  311.                     start: '2016-10-12T17:30:00'  
  312.                 },  
  313.                 {  
  314.                     title: 'Dinner',  
  315.                     start: '2016-10-12T20:00:00'  
  316.                 },  
  317.                 {  
  318.                     title: 'Birthday Party',  
  319.                     start: '2016-10-13T07:00:00'  
  320.                 },  
  321.                 {  
  322.                     title: 'Click for Google',  
  323.                     url: 'http://google.com/',  
  324.                     start: '2016-10-28'  
  325.                 }  
  326.             ]  
  327.   
  328. /*          多数据源支持:场景可能是从多种模块取数据,比如从会议取会议日程、从计划取计划日程,而且要求会议、计划日程颜色显示不一样,那么就可以用这种  
  329.             eventSources: [  
  330.                 {  
  331.                     events: function(start, end, timezone, callback){...},  
  332.                     color: 'black',     // an option!  
  333.                     textColor: 'yellow' // an option!  
  334.                 },  
  335.                 {  
  336.                     googleCalendarId: 'abcd1234@group.calendar.google.com',  
  337.                     color: 'yellow',   // an option!  
  338.                     textColor: 'black' // an option!  
  339.                 }  
  340.             ]  
  341. */  
  342.           
  343.   
  344.         });  
  345.           
  346. //      日期格式需要遵守fullCalendar引用的moment.js规则:https://fullcalendar.io/docs/utilities/Moment/  
  347.   
  348. //      Event Object 就是一个日程区块,数据元,通常以数组的形式传入option->events中 见 https://fullcalendar.io/docs/event_data/Event_Object/  
  349. //      Event Source Object 不好理解,大概就是一组日程数据源对象吧,可以是一个events、也可以是JSON、还可以是Google Calendar的数据 见 https://fullcalendar.io/docs/event_data/Event_Source_Object/  
  350.   
  351. /* updateEvent更新一个日程对象  
  352. $('#calendar').fullCalendar({  
  353.     eventClick: function(event, element) {  
  354.         event.title = "CLICKED!";  
  355.         //更新日程对象信息  
  356.         $('#calendar').fullCalendar('updateEvent', event);  
  357.     }  
  358. });  
  359. */  
  360.   
  361. //      .fullCalendar( 'clientEvents' [, idOrFilter ] ) ->   Array  从内存中筛选指定的event,[, idOrFilter ]==>省略号删除全部、ID数组删除有ID的日程、也可传入Event对象,建议使用时详细查看官方文档  
  362. //      .fullCalendar( 'removeEvents' [, idOrFilter ] )     删除日程,[, idOrFilter ]参见clientEvents,建议使用时详细查看官方文档  
  363. //      .fullCalendar( 'refetchEvents' )                    刷新所有数据源的日历视图,建议使用时详细查看官方文档  
  364. //      .fullCalendar( 'refetchEventSources', sources )     刷新指定数据源的日历视图(与eventSource有关配合用),建议使用时详细查看官方文档  
  365. //      .fullCalendar( 'addEventSource', source )           动态添加一个数据源(与eventSource有关配合用),建议使用时详细查看官方文档  
  366. //      .fullCalendar( 'removeEventSource', source )        动态删除一组数据源(与eventSource有关配合用),建议使用时详细查看官方文档  
  367. //      .fullCalendar( 'removeEventSources', optionalSourcesArray ) 动态删除多个数据源,如果optionalSourcesArray未指定则删除全部,建议使用时详细查看官方文档  
  368. //      .fullCalendar( 'getEventSources' )                  返回所有的数据源  
  369. //      .fullCalendar( 'getEventSourceById', id )           根据ID获取数据源  
  370.   
  371. //      $('#calendar').fullCalendar('render');  渲染日历视图  
  372. //      $('#calendar').fullCalendar('destory'); 销毁日历视图  
  373.   
  374. //      var view = $('#calendar').fullCalendar('getView'); //获取当前视图对象  
  375. //      console.log("name:"+view.name+"|title:"+view.title+"|start:"+view.start+"|end:"+view.end+"|intervalStart:"+view.intervalStart+"|intervalEnd:"+view.intervalEnd);  
  376. //      $('#calendar').fullCalendar('changeView', "month" ); //切换为其它视图  
  377. //      $('#calendar').fullCalendar('prev'); //切换到当前视图的上一页(类似于顶部的“<”箭头)  
  378. //      $('#calendar').fullCalendar('next'); //切换到当前视图的下一页(类似于顶部的“>”箭头)  
  379. //      $('#calendar').fullCalendar('prevYear') //切换到上一年  
  380. //      $('#calendar').fullCalendar('nextYear') //切换到下一年  
  381. //      $('#calendar').fullCalendar('today');   //日期视图跳转到“今天”  
  382. //      $('#calendar').fullCalendar( 'gotoDate', date );  //日期视图跳转到指定时间  
  383. //      $('#calendar').fullCalendar( 'incrementDate', duration ); //日期视图向前或向后移动固定的时间,duration可以为={ days:1, hours:23, minutes:59 }  
  384.   
  385. //      var moment = $('#calendar').fullCalendar('getDate');      //获取当前视图的日期对象,(如果月视图则返回月初到月末,周视图返回周初到周末)  
  386. //      console.log("The current date of the calendar is " + moment.format());  
  387. //      $('#calendar').fullCalendar( 'select', start, [ end ], [ resource ] ); //js动态选择某个时间段的日程  
  388. //      .fullCalendar( 'unselect' );  //js动态取消选择的日程  
  389.   
  390. //      var locale = $('#calendar').fullCalendar('option', 'locale');        //option支持get,注:不仅限于locale,还包括其它option操作  
  391. //      $('#calendar').fullCalendar('option', {locale: 'fr',isRTL: true});   //option支持set,注:不仅限于locale,还包括其它option操作  
  392.   
  393. //      var calendar = $('#calendar').fullCalendar('getCalendar'); //支持动态绑定/解绑fullcalendar中的事件  
  394. //      calendar.on('dayClick', function(date, jsEvent, view) {console.log('clicked on ' + date.format());});  
  395.   
  396. //      .fullCalendar( 'renderEvent', event [, stick ] );   //渲染一个新的Event,建Demo select方法  
  397. //      .fullCalendar( 'rerenderEvents' )                   //渲染那所有的Event  
  398.   
  399.   
  400.   
  401.     });  
  402.   
  403. </script>  
  404.     <style>  
  405.         body {  
  406.             margin: 40px 10px;  
  407.             padding: 0;  
  408.             font-family: "Lucida Grande", Helvetica, Arial, Verdana, sans-serif;  
  409.             font-size: 14px;  
  410.         }  
  411.           
  412.         #calendar {  
  413.             max-width: 900px;  
  414.             margin: 0 auto;  
  415.         }  
  416.     </style>  
  417. </head>  
  418.   
  419. <body>  
  420.   
  421.     <div id='calendar'></div>  
  422.   
  423. </body>  
  424.   
  425. </html>  
0 0
原创粉丝点击