Javascript JQuery+;Fullcalendar-使用jquery对象进行大量迭代
我正在尝试渲染大量事件(大约50个,可能更多)Javascript JQuery+;Fullcalendar-使用jquery对象进行大量迭代,javascript,jquery,fullcalendar,Javascript,Jquery,Fullcalendar,我正在尝试渲染大量事件(大约50个,可能更多) for(var eventIndex=0;eventIndex
for(var eventIndex=0;eventIndex
这需要几秒钟,有时浏览器会要求我中止scipt执行。所以,我想,我需要一种方法来完成它,就像异步并行执行脚本的最后一部分一样。你能给我一些工具之类的建议吗?Thx修改环路本身可能在某种程度上有所帮助。阅读这篇文章 还有这个 通常,循环的最快方式是
,而反向循环,简化了测试条件:
var i = arr.length; while (i--) {/*....*/}
你必须一个接一个地渲染吗?为什么不先设置一个类似JSON数组的数组,然后将其添加到eventSources?日历呈现大量事件的最佳方式是让Fullcalendar为您完成这项工作。在我看来,你们正在尝试做fullcalendar内部已经做过的事情。检查下面的例子,这是如果你必须做这个客户端,我会做这个服务器端
var jsonarray = [];
for (var eventIndex = 0; eventIndex < resp.select_events.length; eventIndex++){
/* c.fullCalendar('renderEvent',{
id: event.id,
title: eventName,
start: event.event_date,
description: eventDesc,
write: event.write
},true);*/
var event = resp.select_events[eventIndex];
var myevent = {
"id": event.id,
"title": eventName,
"start": event.event_date,
"description": eventDesc,
"write": event.write
};
jsonarray.push(myevent);
}
c.fullCalendar('addEventSource', jsonarray);
var jsonarray=[];
对于(var eventIndex=0;eventIndex
如果您有任何疑问,请告知em您是否需要逐一提交?为什么不先设置一个类似JSON数组的数组并将其添加到eventSources中呢?thx,我刚刚发现了这种方法)我不知道,这种方法要快得多)我认为开发人员应该在文档中提到这一点)我想他提到了一些东西……很高兴我能提供帮助。顺便说一句,您应该在服务器端而不是客户端执行此过程,只需将已构建的json数组从服务器传递到客户端,您只需在客户端执行addEventSource操作,因为您不知道每个用户计算机的处理能力;)
var jsonarray = [];
for (var eventIndex = 0; eventIndex < resp.select_events.length; eventIndex++){
/* c.fullCalendar('renderEvent',{
id: event.id,
title: eventName,
start: event.event_date,
description: eventDesc,
write: event.write
},true);*/
var event = resp.select_events[eventIndex];
var myevent = {
"id": event.id,
"title": eventName,
"start": event.event_date,
"description": eventDesc,
"write": event.write
};
jsonarray.push(myevent);
}
c.fullCalendar('addEventSource', jsonarray);