这是我用来切换事件数据的函数:它还使用 cookie 来记住访问之间的选择;您将在页面加载时使用不同的功能来检查 cookie 并在那里设置事件列表。
function toggleEventList(obj) {
var group = $(obj).data('group');
if ( $(obj).data('active') === 'yes' ) {
$(obj).data('active', 'no');
$('#calendar').fullCalendar('removeEventSource', '/cal-data-group?group='+group);
var elCookie = $.cookie('calendarEventList');
if (elCookie) {
elCookie = $.parseJSON(elCookie);
var idx = elCookie.indexOf(group);
if ( idx > -1 ) {
elCookie.splice(idx, 1);
}
}
$.cookie('calendarEventList', JSON.stringify(elCookie), {expires:7, path:'/'});
} else {
$(obj).data('active', 'yes');
$('#calendar').fullCalendar(
'addEventSource',
{ url: '/cal-data-group?group='+group, color: 'gray', textColor: 'black' }
);
var elCookie = $.cookie('calendarEventList');
if (elCookie) {
elCookie = $.parseJSON(elCookie);
var idx = elCookie.indexOf(group);
if ( idx == -1 ) {
elCookie.push(group);
}
} else {
elCookie = [group];
}
$.cookie('calendarEventList', JSON.stringify(elCookie), {expires:7, path:'/'});
}
$(obj).parent().toggleClass('active');
}