我希望有人可以告诉我如何获得一个非常小的版本的FullCalendar(或类似的东西),它将做一个没有标题的小部件大小日历,只是可以点击事件的日期的彩色块。我正在使用fullcalendar在一个wordpress网站是伟大的,但所有的谷歌日历小工具真的很吸吮!
解决方法
您可以通过添加一点CSS来创建功能完整的微型版本。我不得不添加一个“eventMouSEOver”回调来添加事件名称到title属性,所以你可以在工具提示中看到它的名字。
这是微型日历(200 x 225)和demo的屏幕截图。
CSS
#calendar { width: 200px; margin: 0 auto; font-size: 10px; } .fc-header-title h2 { font-size: .9em; white-space: normal !important; } .fc-view-month .fc-event,.fc-view-agendaWeek .fc-event { font-size: 0; overflow: hidden; height: 2px; } .fc-view-agendaWeek .fc-event-vert { font-size: 0; overflow: hidden; width: 2px !important; } .fc-agenda-axis { width: 20px !important; font-size: .7em; } .fc-button-content { padding: 0; }
使用Javascript
$(document).ready(function() { $('#calendar').fullCalendar({ theme: true,header: { left: 'prev,next today',center: 'title',right: 'month,agendaWeek,agendaDay' },editable: true,// add event name to title attribute on mouSEOver eventMouSEOver: function(event,jsEvent,view) { if (view.name !== 'agendaDay') { $(jsEvent.target).attr('title',event.title); } } }); });
更新:使周视图水平事件更小,并使所有事件2px宽或高,使其更容易悬停在他们。
更新v2.4而不是更新上述答案,我只是发布修改后的代码,我用来制作FullCalendar v2.4(demo)
CSS
#calendar { width: 200px; margin: 0 auto; font-size: 10px; } .fc-toolbar { font-size: .9em; } .fc-toolbar h2 { font-size: 12px; white-space: normal !important; } /* click +2 more for popup */ .fc-more-cell a { display: block; width: 85%; margin: 1px auto 0 auto; border-radius: 3px; background: grey; color: transparent; overflow: hidden; height: 4px; } .fc-more-popover { width: 100px; } .fc-view-month .fc-event,.fc-view-agendaWeek .fc-event,.fc-content { font-size: 0; overflow: hidden; height: 2px; } .fc-view-agendaWeek .fc-event-vert { font-size: 0; overflow: hidden; width: 2px !important; } .fc-agenda-axis { width: 20px !important; font-size: .7em; } .fc-button-content { padding: 0; }
使用Javascript
$(document).ready(function () { $('#calendar').fullCalendar({ header: { left: 'prev,eventAfterRender: function () { // add titles to "+# more links" $('.fc-more-cell a').each(function () { this.title = this.textContent; }); },// add event name to title attribute on mouSEOver eventMouSEOver: function (event,event.title); } },eventLimit: true // allow "more" link when too many events }); });