我正在尝试识别一个jQuery插件,该插件将显示整个月的日期长度方式(如下所示 - 数字反映了该月的日期(仅限工作日)。
-3 4 5 6 7- -10 11 12 13 14- -17 18 19 20 21- -24 25 26 27 28-
从理论上讲,这种方法可以显示月份列的日期 - 然后可以将几个人的日历作为行显示在下面。这在下面说明:
---------3 4 5 6 7- -10 11 12 13 14- -17 18 19 20 21- -24 25 26 27 28-
Person A X - - - - - - - X - - - - X X - - - - -
Person B X X X - - - X - X - - - X X X X X X - -
我的问题是“我怎样才能通过jQuery实现上述目标?(我曾向Google询问过试图找到合适的插件 - 但我一直无法识别它)”。
答案 0 :(得分:1)
(function($){
var getWeekDaysInCurrentMonth = function(){
// this will operate off of the current month
// you can make the month an argument
// and then d.setMonth(m)
var d = new Date(),
daysInMonth = [],
currentDay;
// go to first day of month
d.setDate(1);
var firstDay = d.getDate();
// go to last day of month
d.setDate(0);
var lastDay = d.getDate();
for (var i = firstDay; i <= lastDay; i++){
d.setDate(i);
// get the current day of the week in loop
currentDay = d.getDay();
// check not sunday or saturday
if(currentDay !== 0 && currentDay !== 6)
daysInMonth.push(i);
}
return daysInMonth;
};
console.log(getWeekDaysInCurrentMonth());
// OUTPUT: [1, 2, 3, 6, 7, 8, 9, 10, 13,
// 14, 15, 16, 17, 20, 21, 22, 23, 24, 27, 28, 29, 30, 31]
})(jQuery);
下一步是将此函数用于jQuery插件以输出一些表格标记。然后,您将添加配置到您的插件,更改标记的显示方式,首先显示的月份等。如果您仔细阅读我的其他一些jQuery答案,您可以找到创建jQuery插件(或谷歌)的示例。