我有这个代码
$('#calendar').fullCalendar({
viewRender:function(view,element){
if(view.name == "agendaDay"){
if(jQuery("#calendar").hasClass("hasRendered") == false){
var newEvent = {
start: '2014-10-29 07:00',
end: '2014-10-29 10:00',
allDay: false,
};
$('#calendar').fullCalendar( 'renderEvent', newEvent,'stick');
}
}
},
});
此代码的问题在于,即使我已经在agendaDay视图中,它也会继续调用eventRender。我该如何防止这种情况发生?
不确定为什么要这样做,但这里有一个工作示例:
http://jsfiddle.net/3E8nk/762/
viewRender:(function() {
var lastViewName;
return function(view, element) {
if(view.name === 'agendaDay' && lastViewName != view.name) {
var newEvent = {
start: '2014-06-12T10:30:00',
end: '2014-06-12T12:30:00',
allDay: false,
title: 'My test meeting'
};
$('#calendar').fullCalendar( 'renderEvent', newEvent);
}
lastViewName = view.name;
}
})(),
请注意,每次进入agendaDay时,这都会再次添加事件(不过这很容易纠正)。如果你描述你真正想做的事情,可能会有更好的解决方案。