介绍
小编给大家分享一下javascript怎么实现考勤日历功能,希望大家阅读完这篇文章之后都有所收获、下面让我们一起去探讨吧!
<强> attendanceCalendar。js 强>
代码已更新多次,请直接上github下载,链接
修复第一行日期数量计算错误,修改了以下的方法
, function initCalendarBody (), { 时间=美元才能content document.createElement (“div"); 最好选择用addClass(内容、美元替代,,,“div_calendar_body"); 美元才能elem.appendChild($内容); addCalendarHead才能();//日才能期计算错误,例:2017 - 01 var 才能;num =, 0; do {才能 ,,var length =, 0; ,,if (num ==, 0), { ,,,//出星期天外,星期数(1 ~ 6)和第一行显示的日期数(7 ~ 2),相加的结果都为8 ,,,length =, firstWeekDay ==, 0, ?, 1,:, 8,安康;firstWeekDay; ,,,num =,长度; ,,,createLine (length ,安康,1,1); ,,} ,,else { ,,,var length =, mds 作用;num 祝辞,6,?,7,:,mds 作用;num; ,,,num =, num +,长度; ,,,createLine (length 作用;1); ,,} ,,} while 才能;(num & lt;, mds) showCurrentDate才能(); ,} ,function createLine (num,类型),{ var 才能;newDiv =, document.createElement (“div"); for 才能;(var 小姐:=,0;,小姐:& lt;=, num;,我+ +,指数+ +),{ ,,var span =, document.createElement (“span"); ,,var span_text =, document.createTextNode (index +, 1); ,,//单个日期元素的操作 ,,if (attendances ,,, attendances.length 祝辞,0),{ ,,,bindAttendance(跨度,上座率(指数)); ,,} ,,span.appendChild (span_text); ,,newDiv.appendChild(跨度); ,,} if 才能;(type ==, 1), { 最好选择用addClass (newDiv替代,,,,“first_div") ,,} else {才能 最好选择用addClass (newDiv替代,,,,“last_div") ,,} 美元才能content.appendChild (newDiv); 以前,}>css部分,日期元素主要用了三种颜色表示
.div_calendar { ,宽度:450 px; ,保证金:0,汽车; ,text-align:中心; ,显示:-webkit-box; }/* *,日历标题,*/.div_calendar_title { ,宽度:450 px; ,保证金:0,汽车; ,text-align:中心; }/* *,日历主体,*/.div_calendar_body { ,宽度:350 px; ,text-align:中心; }/* *,日元素,*/.div_calendar span  { ,宽度:50 px; ,显示:inline-block; ,text-align:中心; ,行高:50 px; }/* *,正常,*/.div_calendar span.normal  { ,颜色:蓝色; }/* *,迟到,*/.div_calendar span.late  { ,颜色:红色; }/* *,缺勤,*/.div_calendar span.absense  { ,颜色:# 666; }/* *,缺勤,*/.div_calendar span.today  { ,这个特性:50%; 背景:大敌;cornflowerblue; }/* *,日历第一行日期,*/.div_calendar .first_div  { ,text-align:正确的; }/* *,日历末行日期,*/.div_calendar .last_div  { ,text-align:左; }/* *,日期显示div */.div_calendar .div_currentDate  { ,text-align:正确的; } .div_calendar .changeDate  { ,光标:指针; } .div_calendar .div_currentDate  span { 宽度:大敌;继承; } .div_calendar .div_currentDate  span em  { ,保证金:5 px; }日历。html
& lt; ! DOCTYPE html> & lt; html  lang=癳n"祝辞 & lt; head> ,& lt; meta charset=癠TF-8"比; ,& lt; title> Title ,& lt; link  href=https://www.yisu.com/zixun/癱ss/style.css”rel="样式表" type=" text/css "/> 头 <身体>自定义日历
脚本/attendanceCalendar.js