签到功能代码

来源:互联网 发布:淘宝高仿ysl包 编辑:程序博客网 时间:2024/05/02 04:58
  1. var calUtil = {  
  2.     getDaysInmonth : function(iMonth, iYear){  
  3.       var dPrevDate = new Date(iYear, iMonth, 0);  
  4.       return dPrevDate.getDate();  
  5.     },  
  6.     bulidCal : function(iYear, iMonth) {  
  7.       var aMonth = new Array();  
  8.       aMonth[0] = new Array(7);  
  9.       aMonth[1] = new Array(7);  
  10.       aMonth[2] = new Array(7);  
  11.       aMonth[3] = new Array(7);  
  12.       aMonth[4] = new Array(7);  
  13.       aMonth[5] = new Array(7);  
  14.       aMonth[6] = new Array(7);  
  15.       var dCalDate = new Date(iYear, iMonth - 11);  
  16.       var iDayOfFirst = dCalDate.getDay();  
  17.       var iDaysInMonth = calUtil.getDaysInmonth(iMonth, iYear);  
  18.       var iVarDate = 1;  
  19.       var d, w;  
  20.       aMonth[0][0] = "日";  
  21.       aMonth[0][1] = "一";  
  22.       aMonth[0][2] = "二";  
  23.       aMonth[0][3] = "三";  
  24.       aMonth[0][4] = "四";  
  25.       aMonth[0][5] = "五";  
  26.       aMonth[0][6] = "六";  
  27.       for (d = iDayOfFirst; d < 7; d++) {  
  28.         aMonth[1][d] = iVarDate;  
  29.         iVarDate++;  
  30.       }  
  31.       for (w = 2; w < 7; w++) {  
  32.         for (d = 0; d < 7; d++) {  
  33.           if (iVarDate <= iDaysInMonth) {  
  34.             aMonth[w][d] = iVarDate;  
  35.             iVarDate++;  
  36.           }  
  37.         }  
  38.       }  
  39.       return aMonth;  
  40.     },  
  41.     ifHasSigned : function(signList,day){  
  42.       var signed = false;  
  43.       $.each(signList,function(index,item){  
  44.           var date = new Date(item.signDate);  
  45.           if(date.getDate() == day) {  
  46.               signed = true;  
  47.               return false;  
  48.           }  
  49.       });  
  50.       return signed ;  
  51.     },  
  52.     drawCal : function(iYear, iMonth ,signList) {  
  53.       var currentYearMonth = iYear+"年"+iMonth+"月";  
  54.       var myMonth = calUtil.bulidCal(iYear, iMonth);  
  55.       var htmls = new Array();  
  56.       htmls.push("<div class='sign_main' id='sign_layer'>");  
  57.       htmls.push("<div class='sign_succ_calendar_title'>");  
  58.       htmls.push("<div class='calendar_month_span'>"+currentYearMonth+"</div>");  
  59.       htmls.push("</div>");  
  60.       htmls.push("<div class='sign' id='sign_cal'>");  
  61.       htmls.push("<table class='table'>");  
  62.       htmls.push("<tr>");  
  63.       htmls.push("<th>" + myMonth[0][0] + "</th>");  
  64.       htmls.push("<th>" + myMonth[0][1] + "</th>");  
  65.       htmls.push("<th>" + myMonth[0][2] + "</th>");  
  66.       htmls.push("<th>" + myMonth[0][3] + "</th>");  
  67.       htmls.push("<th>" + myMonth[0][4] + "</th>");  
  68.       htmls.push("<th>" + myMonth[0][5] + "</th>");  
  69.       htmls.push("<th>" + myMonth[0][6] + "</th>");  
  70.       htmls.push("</tr>");  
  71.       var d, w;  
  72.       for (w = 1; w < 7; w++) {  
  73.         htmls.push("<tr>");  
  74.         for (d = 0; d < 7; d++) {  
  75.           var ifHasSigned = calUtil.ifHasSigned(signList,myMonth[w][d]);  
  76.           if(ifHasSigned){  
  77.             htmls.push("<td class='on'>" + (!isNaN(myMonth[w][d]) ? myMonth[w][d] : " ") + "</td>");  
  78.           } else {  
  79.             htmls.push("<td>" + (!isNaN(myMonth[w][d]) ? myMonth[w][d] : " ") + "</td>");  
  80.           }  
  81.         }  
  82.         htmls.push("</tr>");  
  83.       }  
  84.       htmls.push("</table>");  
  85.       htmls.push("</div>");  
  86.       htmls.push("</div>");  
  87.       return htmls.join('');  
  88.     }  

  1. };  

  1. <style type="text/css">  
  2. @media screen and (min-width:1024px) {  
  3.     .rich_media {  
  4.         width: 500px;  
  5.         margin-left: auto;  
  6.         margin-right: auto;  
  7.         padding: 20px;  
  8.     }  
  9. }  
  10. </style>  
  11. </head>  
  12. <body style="background-color: #fff;">  
  13.     <div class="rich_media">  
  14.             <div id="page-content">  
  15.                 <div style="text-align: center;background-color: #2FAA00;height: 50px;margin-bottom: 20px;">  
  16.                     <span style="cursor: pointer;font-weight: 600;font-size: 20px;color: #fff;height: 50px;line-height: 50px;">每日签到</span>  
  17.                     <input type="hidden" id="userId" value="${user.id }" />  
  18.                 </div>  
  19.                 <div class="container-fluid">  
  20.                     <div class="row-fluid" id="calendar">  
  21.                           
  22.                     </div>  
  23.                     <div id="btnDiv" style="display: none;">  
  24.                         <div class="row-fluid text-center">  
  25.                             <span id="sing_for_number" class="btn btn-default">签到</span>  
  26.                         </div>  
  27.                     </div>  
  28.                 </div>  
  29.             </div>  
  30.     </div>  
  31. </body> 

0 0
原创粉丝点击