javascript怎么实现考勤日历功能

  介绍

小编给大家分享一下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