function setFocusDays(days,calendarID,currentDate,viewName) {
//fullCalendar由于没有重新生成table,所以上一次对比可能成功的样式没有去掉
//要注意先清空可能已经设置的td样式,要不对不不成功上一次设置的td样式还会保留下来
$('#' + calendarID + ' th,#' + calendarID + ' td').removeClass({ 'background-color': 'red', color: 'white'});
var divDay = viewName == 'month' ? $('#' + calendarID + ' div.fc-day-number'):'' //获取fullCalendar显示日期的div容器
, d, td, currentYear = currentDate.getFullYear(), currentMonth = currentDate.getMonth(), date = currentDate.getDate();
for (var i = 0; i < days.length; i++) {
//不是当前年和月份继续下一次循环
if (viewName == 'basicDay') { //按日显示,currentDate即为显示的日期
if (days[i].getDate() == date)//日对比成功
$('#' + calendarID + ' div.fc-view-basicDay').find('th,td').css({ 'background-color': 'red', color: 'white'});
continue;
}
else if (viewName == 'basicWeek') { //按周显示,currentDate即为显示的周的星期一
for (var j = 0; j < 7; j++)
if (days[i].getDate() == date + j) {
$('#' + calendarID + ' div.fc-view-basicWeek').find('th:eq(' + j + ')').css({ 'background-color': 'red', color: 'white'}).end().find('td:eq(' + j + ')').css({ 'background-color': 'red', color: 'white'});
break;
}
continue;
}
//按月份
d = days[i].getDate().toString(); //获取日部分数据
m = days[i].getMonth().toString();
divDay.each(function () {//遍历fullCalendar日部分
td = $(this).closest('td');
//对比成功,还需要判断这个日期不是其他月份
if (this.innerHTML == d && td.attr('class').indexOf('fc-other-month') == -1&&) {
td.css({ 'background-color': 'red', color: 'white'});
return false;
}
});
}
}
这个如何比较完整的日期
------解决方案--------------------
重新修改过了,依据fullcalendar当前显示的日期进行对比,参数注意修改过了,自己研究下:fullCalendar设置日期td样式