Fullcalendar 加载日历事件非常慢,有没有优化的方法?
我有一个日历正在成功运行,但加载时间非常慢。每个事件都会成功呈现,但用户在切换视图或浏览月/周/日时必须等待5-10秒 我已经在下面展示了事件加载代码,我可以对它做些什么来加快加载速度吗 谢谢Fullcalendar 加载日历事件非常慢,有没有优化的方法?,fullcalendar,Fullcalendar,我有一个日历正在成功运行,但加载时间非常慢。每个事件都会成功呈现,但用户在切换视图或浏览月/周/日时必须等待5-10秒 我已经在下面展示了事件加载代码,我可以对它做些什么来加快加载速度吗 谢谢 <script type='text/javascript'> $(document).ready(function () { var date = new Date(); var d = date.getDate(); var m = date.getMonth(
<script type='text/javascript'>
$(document).ready(function () {
var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
var calendar = $('#calendar').fullCalendar({
//events: [{"title":"My Test Event","start":"Wed, 02 Nov 2011 13:00:00 EST","url":"http://edu","allDay":"false"}],
events: "JSONcalendarFeed.aspx",
defaultView: 'month',
weekends: false,
allDay: false,
minTime: 8,
maxTime: 19,
allDaySlot: false,
slotMinutes: 15,
weekMode: 'liquid',
defaultEventMinutes: 60,
firstHour: 8,
header: {
left: 'month,agendaWeek,agendaDay',
center: 'title',
right: 'prev,next today'
},
eventRender: function (event, element) {
var evtDesc = event.description;
var evtStart = event.start;
var evtEnd = event.end;
if (evtDesc || evtStart) {
element.qtip(
{
content: evtStart + ' - ' + evtEnd + '<br/>' + evtDesc,
position: {
corner: {
target: 'bottomMiddle',
tooltip: 'topMiddle'
}
},
style: {
name: 'light'
}
}
);
}
},
selectable: true,
selectHelper: true,
select: function (start, end, allDay) {
var title = prompt('Event Title:');
if (title) {
calendar.fullCalendar('renderEvent',
{
title: title,
start: start,
end: end,
allDay: false,
weekends: false
},
true // make the event "stick"
);
}
calendar.fullCalendar('unselect');
},
editable: true
});
});
</script>
总结评论意见:
不要从提要发送所有事件,只发送在开始和结束之间发生的事件,这些事件是fullCalendar发送到提要页面的参数。这些以秒为单位作为unix时间戳发送 我看不出任何明显的错误,您的JSONcalendarFeed.aspx看起来如何?在使用静态事件取消对行的注释时,您是否会得到相同的行为?您可以尝试读取fullCalendar发送的开始和结束参数,以便仅从提要发送这些日期之间的事件,以减少加载时间。我真的不记得为什么了,但出于某种原因,我把我的懒散设置为false。试过了吗?正如我前面所说的,在您发布的代码中看不到任何错误。fullCalendar已经完成了这项工作。。检查开始和结束参数,因为unix时间戳(以秒为单位)随每个事件请求一起发送。每次更改视图或浏览月份时,fullCalendar都会自动获取事件。您应该只发送在显示时间内发生的事件。是的。这就是为什么您需要读取开始和结束参数的原因。我认为时间戳是以毫秒的形式发送的,并在给定范围前一天和后一天获取数据,这实际上是前1000天和后1000天!它通过了b/c测试,我们的测试数据样本不够大。哎呀,哈哈。我也犯了同样的错误,但是没有炸掉任何东西。这就是为什么我总是在第二部分加粗=嗨,你能再详细说明一下吗?也许可以举个例子?